Files
bfe-core1106-sdk/docs/decisions/0005-driver-source-of-truth.md
BFE Engineering 42fb386f60 docs: ASCII typography and style normalization across all repo text
Replace every em dash with real punctuation (rewrites, not hyphen swaps)
in docs, code comments, scripts, configs, and the port records; convert
en dashes, curly quotes, ellipsis glyphs, arrows, and section signs to
ASCII; drop machine-writing tell phrases from living docs. ADR titles
now use a colon. The M2 bring-up DTS model string carried an em dash
into the patch series and its record echoes; fixed at both, and the full
series re-verified to apply cleanly onto pristine 6.18.46. One comment
in freshness.h deliberately names the em dash glyph the UI renders as
the unknown mark; that is data, kept as prose naming it.

Verified: cargo tests (sim, config-lint, rs485-bridge), shellcheck,
both driver MC/DC harnesses, patches-apply.
2026-08-31 12:31:27 -06:00

1001 B

ADR 0005: Driver Source of Truth

Status: Accepted (2026-08-25).

Context

Our own hardware-facing driver code (relays, modbus master, RGA wrapper, HPMCU supervisor, devmem/reset ladder, freshness) is the Tier-1 MC/DC target, but it currently lives in flare-edge. The kernel driver source lives in an un-versioned scratch tree (flare-edge/research/linux-6.18.46/).

Decision

Bring hardened copies into this repo's drivers/ as the canonical source-of-truth, each with its HAL seam and a 100% MC/DC host harness. The RV1106 kernel deltas are formalized as a patch series in patches/. flare-edge consumes this repo later (separate, maintainer-gated step).

Consequences

  • Realizes the seam architecture (ADR-referenced in docs/architecture.md).
  • flare-edge is not edited now; a later integration step points flare-edge at these.
  • Risk: temporary duplication of shared constants between the two repos until the integration lands; tracked, acceptable for the bring-up window.