61#ifndef RCBENCH_OUT_STORE_H
62#define RCBENCH_OUT_STORE_H
111#define OUT_STORE_SETTLE_MS 400u
129#define OUT_STORE_QUIET_MS 5u
135#define OUT_STORE_SECTORS 2u
143#define OUT_STORE_GAP_WAIT_MS 1000u
191#define OUT_STORE_LOCKOUT_MS 10u
197#define OUT_STORE_REFUSED_WAIT_MS 1000u
The page map: what the panel can ask the IOmcu for, and set.
bool out_store_is_off(void)
Whether out_store_off() has been called.
Definition out_store.c:315
bool out_store_load(out_store_t *out)
Read what was saved.
Definition out_store.c:451
bool out_store_flash_program(uint32_t off, const uint8_t *data, uint32_t len)
Program len bytes, whole 256-byte pages up to one sector, at flash offset off, below the store.
Definition out_store.c:607
bool out_store_window_open(void)
Whether a window may open now: the store is not off, no save is waiting, and core 1 did not refuse th...
Definition out_store.c:592
uint32_t out_store_last_erase_us(void)
How long the last sector erase held interrupts off, in microseconds.
Definition out_store.c:504
uint8_t out_store_last_record(void)
Which of the 16 record slots the store last used (of the 32 one-page slots before version 8 while the...
Definition out_store.c:508
void out_store_off(void)
Switch the store's writing off for this boot: core 1 was launched and did not register for the flash ...
Definition out_store.c:309
bool out_store_flash_erase(uint32_t off)
Erase the 4KiB sector at flash offset off, below the store.
Definition out_store.c:597
bool out_store_pending(void)
Whether a save has been asked for and not yet reached flash.
Definition out_store.c:502
bool out_store_flash_call(void(*fn)(void *), void *arg)
Run fn inside a window: the boot ROM's BUY, which rewrites flash.
Definition out_store.c:618
bool out_store_reclaim(bool driving, uint32_t quiet_ms)
Erase a sector that holds nothing still wanted.
Definition out_store.c:570
void out_store_save(const out_store_t *cfg, uint32_t now_ms)
Ask for cfg to be written.
Definition out_store.c:485
out_store_step_t out_store_tick(bool driving, uint32_t quiet_ms, uint32_t now_ms)
Take a deferred save if it is safe to.
Definition out_store.c:510
uint32_t out_store_last_program_us(void)
How long the last page program held interrupts off, in microseconds.
Definition out_store.c:506
void out_store_core1_parkable(void)
Core 1 registered for the flash lock-out: every window from now on through flash_safe_execute(),...
Definition out_store.c:302
out_store_step_t
What a pass of out_store_tick() did.
Definition out_store.h:202
@ OUT_STORE_REFUSED
Definition out_store.h:209
@ OUT_STORE_ERASED
Definition out_store.h:204
@ OUT_STORE_IDLE
Definition out_store.h:203
@ OUT_STORE_WROTE
Definition out_store.h:205
What a record in the IOmcu's output store carries, and how a record an earlier build wrote is read.
What is kept: the two pages that describe the outputs; the PD mini's wiring – SUPPLY's ENABLE to BAUD...
Definition out_store_rec.h:86