docs(adr): record ADR-012 — SD on its own SPI3 host

Document the shared-bus arbitration decision: rather than rework the
proven EPD SPI layer and add a cross-thread mutex on the save path, the
SD moves to a dedicated SPI3. Update the boot sequence, risk table,
Spike 3 postmortem follow-up, hardware overview, and firmware README.
This commit is contained in:
Julien Calixte
2026-07-11 11:28:22 +02:00
parent 9129f04d0e
commit 4bc9236bd7
5 changed files with 80 additions and 17 deletions

View File

@@ -190,8 +190,9 @@ it is explicitly **not recommended** and not applied.
(2026-07-11).
- [x] Enable PSRAM (done, `CONFIG_SPIRAM`) and build Spike 7 (git push) — both
complete; see [Spike 7 postmortem](2026-07-05-spike7-gix-https-push.md).
- [ ] **Still open:** settle the **shared-bus arbitration** decision (EPD lock
vs. SPI3 for SD) before wiring persistence into `main.rs`.
- [x] Settle the **shared-bus arbitration** decision → **SD on its own SPI3**
(ADR-012, 2026-07-11); spike rewired to SPI3 (SCK 14 / MOSI 15), pending a
bench re-run on the new wiring.
- [ ] **Still open:** implement the FatFS atomic-save (unlink-then-rename +
`*.tmp` boot-recovery) in the real `persistence` module.