I/O evolution implementation ledger¶
This page derives from the original CSV; it is not a new status authority, execution record or software qualification. Original IDs, order and every original field come from the original ledger. Source: docs/design/io-evolution-execution.csv; SHA-256: ccd837a5f0d2b7bd6eac1f184847b43b547d77c37010030db39c2c24563ae4b1.
Different ledgers overlap in scope; do not add their counts or calculate a project-wide completion rate. Interpret implementation, software and physical status separately. development_passed does not mean execution at the current documentation HEAD. Consult the exact results index for the source and scope of qualification_record_authority. Absolute /workspace and /dev/shm locators retain their original bytes and only identify the original execution host. See the software-evidence entry for retrievable archives and member locations.
Original exit fields are only fields actually present in the original CSV. Tasks, qualification prerequisites and contract links also retain their original wording; they cannot be used to invent an execution.
This table contains 42 original records; this is only the source row count.
IO-01¶
Original field |
Original value |
|---|---|
|
IO-01 |
|
P0 |
|
capabilities |
|
Single authority for exact provider and mode support |
|
tools/configure/selected_contracts.py;tools/configure/io_traits.py;tools/configure/factory.py;tools/maintenance/work_packages.py;docs/delivery/capabilities.md |
|
Existing catalogue plus selected metadata; document exact boundaries |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-02¶
Original field |
Original value |
|---|---|
|
IO-02 |
|
P0 |
|
traits |
|
Optional immutable typed I/O traits |
|
tools/configure/io_traits.py;tools/configure/factory.py |
|
Capability switch controls all emitted readonly trait objects |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-03¶
Original field |
Original value |
|---|---|
|
IO-03 |
|
P0 |
|
silicon |
|
Observed silicon identity and revision admission |
|
core/include/nexus/core/silicon.h;core/src/silicon.c |
|
Exact documents and revision policy; unknown is explicit; factory stays cold |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-04¶
Original field |
Original value |
|---|---|
|
IO-04 |
|
P0 |
|
lifecycle |
|
Admission cancellation drain epochs and quarantine regression matrix |
|
core/src/request.c;tests/google/io_state_machine_test.cpp;tests/google/spi_dma_owner_wait_test.cpp |
|
Fresh complete no-skip software gate for this iteration |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-05¶
Original field |
Original value |
|---|---|
|
IO-05 |
|
P0 |
|
budgets |
|
Bounded IRQ and service execution observation |
|
io/include/nexus/io/cycle_probe.h;io/src/mechanisms/cycle_probe.c;tools/configure/factory.py |
|
Optional probes compile out; explicit service and IRQ budgets |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-06¶
Original field |
Original value |
|---|---|
|
IO-06 |
|
P0 |
|
stream |
|
Rate block hold-time loss and backpressure budgets |
|
tools/configure/stream_profiles.py;io/include/nexus/io/stream_profile.h;io/src/mechanisms/stream_profile.c |
|
Actual selected-provider configuration validates stream budget |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-07¶
Original field |
Original value |
|---|---|
|
IO-07 |
|
P0 |
|
hil |
|
Board fixtures and fault-injection station preparation |
|
tools/hil;tools/testing/test_hil_io_protocols.py |
|
Prepare software tooling; physical tests remain not_executed |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-08¶
Original field |
Original value |
|---|---|
|
IO-08 |
|
P0 |
|
measurement |
|
Linked resource and runtime cost comparison |
|
tools/measurement;tests/contracts/uart_rx_compact_assembly |
|
Fresh exact ELF comparison; no inferred physical timing or energy |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-09¶
Original field |
Original value |
|---|---|
|
IO-09 |
|
P1 |
|
resources |
|
Hierarchical controller base channel resource claims |
|
tools/configure/resource_graph.py;tools/configure/providers/stm32g474/pwm_shared.py;soc/stm32/stm32g474/drivers/pwm_shared.c;tests/google/g474_pwm_shared_factory_test.cpp;tools/measurement/retention.py |
|
Compatible shared base plus channels requires one actual hardware owner |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-10¶
Original field |
Original value |
|---|---|
|
IO-10 |
|
P1 |
|
resources |
|
Physical peripheral identity and mutually exclusive personalities |
|
tools/configure/resource_graph.py;tools/configure/matrix.py;soc/stm32/stm32g474/soc.json |
|
Canonical aliases and personality conflicts rejected |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-11¶
Original field |
Original value |
|---|---|
|
IO-11 |
|
P1 |
|
events |
|
Typed hardware event graph and startup ordering |
|
tools/configure/trigger_graph.py |
|
Validate event cycles with owned stop gates; emit selected reviewed routes |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-12¶
Original field |
Original value |
|---|---|
|
IO-12 |
|
P1 |
|
dma |
|
Selected DMA engines lanes requests and reachability |
|
tools/configure/dma_topology.py |
|
Exact provider tuples; reject physical lane collisions |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-13¶
Original field |
Original value |
|---|---|
|
IO-13 |
|
P1 |
|
dma |
|
Descriptor ownership placement cache and chain cancellation |
|
tools/configure/dma_topology.py;soc/stm32/stm32u575/drivers/uart_dma_chain.c;soc/stm32/stm32u575/private/stm32u575_uart_gpdma_chain.h;soc/stm32/stm32u575/private/stm32u575_uart_gpdma_impl.h;tests/google/u575_uart_chain_test.cpp;tools/configure/assemblies/u575-uart-chain.toml |
|
Static validation plus actual linked-list provider drain and loans |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-14¶
Original field |
Original value |
|---|---|
|
IO-14 |
|
P1 |
|
uart |
|
Explicit line formats flow control and independent nine-bit I/O |
|
io/include/nexus/io/uart_word.h |
|
Native and exact STM32/GD32 register paths; compact byte default |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-15¶
Original field |
Original value |
|---|---|
|
IO-15 |
|
P1 |
|
uart |
|
Bounded FIFO IRQ service and concurrent stream load |
|
io/private/uart_fifo_impl.h;soc/stm32/stm32h743/drivers/uart_fifo.c;soc/stm32/stm32u575/drivers/uart_fifo.c;docs/design/uart-fifo.md |
|
Bounded batch and IRQ latency observations on exact providers |
|
in_progress |
|
not_qualified |
|
not_executed |
|
Codex |
IO-16¶
Original field |
Original value |
|---|---|
|
IO-16 |
|
P1 |
|
spi |
|
Whole-CS segments dummy cycles and 8/16-bit words |
|
io/include/nexus/io/spi_dma_owner_binding.h;soc/native/drivers/spi_dma_transaction.c;components/bus_owner/src/spi_dma_owner.c;soc/stm32/stm32f407/drivers/spi_dma.c;soc/gd32/gd32f470/drivers/spi_dma.c |
|
Native STM32F407 GD32F470 polling then async DMA loan and drain |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-17¶
Original field |
Original value |
|---|---|
|
IO-17 |
|
P1 |
|
i2c |
|
Kernel-clock timing and long-message reload |
|
soc/common/i2c_v2.c;tools/configure/i2c_timing.py;tools/configure/i2c_timing_selection.py;tests/google/i2c_v2_long_factory_test.cpp |
|
Reviewed electrical timing inputs; preserve message START and STOP |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-18¶
Original field |
Original value |
|---|---|
|
IO-18 |
|
P1 |
|
adc |
|
Explicit sample formats groups triggers and provenance |
|
io/include/nexus/io/adc_format.h;io/include/nexus/io/adc_group.h;io/src/api/adc_group.c;soc/stm32/stm32g474/drivers/adc_group.c;docs/design/adc-group.md |
|
Integer storage metadata and actual provider group support |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-19¶
Original field |
Original value |
|---|---|
|
IO-19 |
|
P1 |
|
pwm |
|
Atomic multi-channel shadow commit and break fault handling |
|
io/include/nexus/io/pwm_group.h;soc/stm32/stm32g474/drivers/pwm_group.c;tools/configure/providers/stm32g474/emission.py |
|
Single timer owner; no automatic restart after break |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-20¶
Original field |
Original value |
|---|---|
|
IO-20 |
|
P1 |
|
capture |
|
Counter widths filters encoders and overcapture |
|
io/include/nexus/io/timer_capture.h;io/include/nexus/io/encoder.h;soc/stm32/stm32g474/drivers/timer_capture.c;soc/stm32/stm32g474/drivers/encoder.c |
|
Wrap-safe capture and reviewed encoder modes on real providers |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-21¶
Original field |
Original value |
|---|---|
|
IO-21 |
|
P1 |
|
timestamps |
|
Timestamp source domain epoch frequency and uncertainty |
|
io/include/nexus/io/observation.h;io/src/mechanisms/observation.c;io/src/controllers/eth_frames_mac.c;tests/google/ethernet_frames_mac_test.cpp;docs/design/ethernet-frames.md |
|
Reject incompatible domains and distinguish observation from event time |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-22¶
Original field |
Original value |
|---|---|
|
IO-22 |
|
P1 |
|
diagnostics |
|
Optional state recovery ownership and checked service entry |
|
io/src/mechanisms/observation.c |
|
Checked dispatch is distinct from I/O progress or settlement |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-23¶
Original field |
Original value |
|---|---|
|
IO-23 |
|
P1 |
|
memory |
|
Remove unused TX DMA fields from RX-only providers |
|
soc/stm32/stm32f407/drivers/uart_receive.c;soc/stm32/stm32f407/drivers/uart_duplex.c;soc/gd32/gd32f470/drivers/uart_receive.c;soc/gd32/gd32f470/drivers/uart_duplex.c;tests/contracts/uart_rx_compact_assembly |
|
Fresh linked RAM measurements and duplex lifecycle regression |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-24¶
Original field |
Original value |
|---|---|
|
IO-24 |
|
P1 |
|
flash |
|
Busy-bank pulse RAM closure cache ECC and watchdog contract |
|
soc/stm32/stm32h743/drivers/flash.c;tools/configure/providers/stm32h743/emission.py;soc/stm32/stm32h743/system.c;tools/measurement/h743_flash_ram.py;tools/measurement/flash_execution.py;tools/testing/test_h743_ram_build_gate.py;docs/design/h743-flash-ram.md |
|
Uncancellable pulse and complete execution closure verified per profile |
|
in_progress |
|
not_qualified |
|
not_executed |
|
Codex |
IO-25¶
Original field |
Original value |
|---|---|
|
IO-25 |
|
P1 |
|
providers |
|
Reuse reviewed peripheral IP generations and official HAL/LL |
|
soc/common;io/private/uart_fifo_impl.h;io/src/controllers/eth_frames_mac.c;tools/configure/selected_contracts.py |
|
Private implementation sharing with exact per-family facts |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-26¶
Original field |
Original value |
|---|---|
|
IO-26 |
|
P1 |
|
h743 |
|
Cold PLL voltage latency and kernel-clock profiles |
|
soc/stm32/stm32h743/clock.c;soc/stm32/stm32h743/system.c;tools/configure/clocks.py;tests/google/h743_high_factory_test.cpp;docs/design/h743-high-clock.md |
|
Readback rollback and exact reference identity |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-27¶
Original field |
Original value |
|---|---|
|
IO-27 |
|
P1 |
|
h743 |
|
UART continuous duplex DMA and SPI DMA with cache |
|
soc/stm32/stm32h743;soc/stm32/stm32h743/drivers/uart_continuous.c;soc/stm32/stm32h743/private/stm32h743_uart_continuous.h;soc/stm32/stm32h743/drivers/uart_duplex.c;soc/stm32/stm32h743/private/stm32h743_uart_duplex.h;soc/stm32/stm32h743/drivers/spi_dma.c;tests/google/h743_uart_continuous_test.cpp;tests/google/h743_uart_duplex_test.cpp;tests/google/h743_spi_dma_test.cpp;tools/configure/assemblies/h743-uart-continuous.toml;tools/configure/assemblies/h743-uart-continuous-cache-on.toml;tools/configure/assemblies/h743-uart-duplex-continuous.toml;tools/configure/assemblies/h743-uart-duplex-continuous-cache-on.toml;tools/configure/assemblies/h743-spi-dma-cache-on.toml |
|
Selected SRAM reachability and held-buffer protection |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-28¶
Original field |
Original value |
|---|---|
|
IO-28 |
|
P1 |
|
u575 |
|
Finite GPDMA provider and USART errata handling |
|
soc/stm32/stm32u575/drivers/uart_dma.c;soc/stm32/stm32u575/private/stm32u575_uart_gpdma.h;tests/google/u575_uart_gpdma_test.cpp;tests/google/u575_uart_gpdma_factory_test.cpp;docs/design/u575-uart-gpdma.md |
|
Actual GPDMA drain and exact ES0499 workarounds; TZEN0 first |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-29¶
Original field |
Original value |
|---|---|
|
IO-29 |
|
P1 |
|
g474 |
|
Synchronous PWM ADC trigger and comparator break reference |
|
io/include/nexus/io/pwm_adc.h;soc/stm32/stm32g474/drivers/pwm_adc.c;tools/configure/providers/stm32g474/coupled.py;tests/google/g474_pwm_adc_factory_test.cpp;docs/design/pwm-adc.md |
|
Generic control capture mechanisms; product algorithms external |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-30¶
Original field |
Original value |
|---|---|
|
IO-30 |
|
P2 |
|
power |
|
Optional runtime clock and power transitions |
|
tools/configure/runtime_power.py;soc/stm32/stm32h743/system.c;docs/design/clock-domain-sleep.md |
|
Active I/O leases rollback and monotonic deadline continuity |
|
in_progress |
|
not_qualified |
|
not_executed |
|
Codex |
IO-31¶
Original field |
Original value |
|---|---|
|
IO-31 |
|
P2 |
|
pinctrl |
|
Explicit default sleep safe levels wake and retention |
|
io/include/nexus/io/pin_state.h;soc/stm32/stm32g474/drivers/pin_state.c;tools/configure/pin_states.py;docs/explanation/gpio-pin-states.md |
|
No invented board wiring; selected reviewed state only |
|
in_progress |
|
not_qualified |
|
not_executed |
|
Codex |
IO-32¶
Original field |
Original value |
|---|---|
|
IO-32 |
|
P2 |
|
u575 |
|
LPDMA autonomous Stop2 and LPBAM reference |
|
soc/stm32/stm32u575;components/soc/stm32/stm32u575_lpdma_copy;components/soc/stm32/stm32u575_stop2/include/nexus/components/stm32u575_stop2_copy.h;soc/stm32/stm32u575/drivers/lpdma_copy.c;soc/stm32/stm32u575/private/stm32u575_lpdma_copy_hw.h;soc/stm32/stm32u575/memory_init.c;soc/stm32/stm32u575/system.c;tests/google/u575_lpdma_copy;tests/google/u575_stop2_copy;tests/google/u575_memory_test.cpp;tools/configure/assemblies/u575-lpdma-copy-stop2.toml;cmake/package/verification/io_evolution/consumers/u575-lpdma-copy.c |
|
Selected low-power peripheral SRAM4 and wake/stop ownership |
|
partial_exact_reference_implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-33¶
Original field |
Original value |
|---|---|
|
IO-33 |
|
P2 |
|
canfd |
|
CAN FD payload timing BRS ESI and message RAM |
|
io/include/nexus/io/can_fd.h;soc/stm32/stm32g474/drivers/fdcan.c;tools/configure/providers/stm32g474/coupled.py;tests/google/g474_fdcan_test.cpp;tests/google/g474_fdcan_factory_test.cpp;docs/design/can-fd.md |
|
Classic CAN remains compact; exact FDCAN provider required |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-34¶
Original field |
Original value |
|---|---|
|
IO-34 |
|
P2 |
|
ethernet |
|
VLAN scatter gather frame loans and hardware timestamps |
|
io/include/nexus/io/ethernet_frames.h;io/src/controllers/eth_frames_mac.c;soc/stm32/stm32f407/drivers/ethernet_frames.c;soc/gd32/gd32f470/drivers/ethernet_frames.c;docs/design/ethernet-frames.md |
|
Actual hardware descriptor ownership and truthful global abort |
|
implemented |
|
not_qualified |
|
not_executed |
|
Codex |
IO-35¶
Original field |
Original value |
|---|---|
|
IO-35 |
|
P2 |
|
usb |
|
Optional class adapters and exact PHY endpoint capabilities |
|
io/src/controllers/usb_device_controller.c;soc/native/drivers/usb_device.c;components |
|
Control reset ACK ZLP and device mode before additional USB modes |
|
in_progress |
|
not_qualified |
|
not_executed |
|
Codex |
IO-36¶
Original field |
Original value |
|---|---|
|
IO-36 |
|
P2 |
|
time |
|
RTC LPTIM alarms wrap backup and reset domains |
|
io/include/nexus/io/rtc.h;io/include/nexus/io/lptim.h;soc/native/drivers/rtc_lptim.c;soc/stm32/stm32u575/drivers/lptim.c;soc/stm32/stm32u575/private/stm32u575_lptim.h;tools/configure/assemblies/u575-lptim-run.toml;tests/google/u575_lptim_test.cpp;soc/stm32/stm32u575/drivers/rtc.c;soc/stm32/stm32u575/private/stm32u575_rtc.h;tools/configure/assemblies/u575-rtc-run.toml;tests/google/u575_rtc_test.cpp;docs/design/io-extension-boundaries.md |
|
Wall-clock and monotonic domains remain separate |
|
in_progress |
|
not_qualified |
|
not_executed |
|
Codex |
IO-37¶
Original field |
Original value |
|---|---|
|
IO-37 |
|
P2 |
|
storage |
|
SDMMC and serial memory block command mapped interfaces |
|
io;soc;components/mapped_storage;tests/google/mapped_storage_test.cpp;docs/design/io-extension-boundaries.md |
|
XIP cache DMA loans and erase ownership are explicit |
|
in_progress |
|
not_qualified |
|
not_executed |
|
Codex |
IO-38¶
Original field |
Original value |
|---|---|
|
IO-38 |
|
P2 |
|
i3c |
|
Bounded discovery IBI and hot-join caller storage |
|
components/i3c_controller;tests/google/i3c_controller_test.cpp;tests/contracts/i3c_runtime;docs/design/i3c-controller.md |
|
No implicit factory discovery; exact peripheral reference required |
|
in_progress |
|
not_qualified |
|
not_executed |
|
Codex |
IO-39¶
Original field |
Original value |
|---|---|
|
IO-39 |
|
P2 |
|
security |
|
TrustZone peripheral broker and attribution |
|
components/user_io_broker;components/bus_owner;tests/google/user_io_async_test.cpp;docs/design/user-io-broker.md;tests/contracts/u575_trustzone |
|
Principal and memory validation; copied and borrowed data distinct |
|
in_progress |
|
not_qualified |
|
not_executed |
|
Codex |
IO-40¶
Original field |
Original value |
|---|---|
|
IO-40 |
|
P2 |
|
multicore |
|
AMP resource partition and epoch-safe IPC |
|
core;arch;components/amp_ipc;tests/google/amp_ipc_test.cpp;docs/design/io-extension-boundaries.md |
|
Unique hardware owner and explicit remote reset/cache contract |
|
in_progress |
|
not_qualified |
|
not_executed |
|
Codex |
IO-41¶
Original field |
Original value |
|---|---|
|
IO-41 |
|
P2 |
|
audio |
|
I2S SAI PDM framing and continuous DMA loans |
|
io;soc;io/include/nexus/io/frame_stream.h;io/src/mechanisms/frame_stream.c;tests/google/frame_stream_test.cpp;docs/design/io-extension-boundaries.md;components/soc/stm32/f407_i2s2_slave_tx;soc/stm32/stm32f407/drivers/i2s2_slave_tx.c;soc/stm32/stm32f407/private/stm32f407_system.h;tests/google/f407_i2s2_slave_tx_test.cpp;tests/contracts/f407_i2s2_slave_tx;tools/configure/assemblies/sky-i2s2-slave-tx.toml;tools/configure/assemblies/qiming-i2s2-slave-tx.toml;docs/design/f407-i2s2-slave-tx.md;tools/testing/evidence/f407-i2s2-20261020/README.md |
|
Frame-slot format and bounded underrun; optional external codec |
|
in_progress |
|
not_qualified |
|
not_executed |
|
Codex |
IO-42¶
Original field |
Original value |
|---|---|
|
IO-42 |
|
P2 |
|
multimedia |
|
Camera display accelerator planar and strided buffers |
|
io;soc;io/include/nexus/io/frame_stream.h;components/soc/stm32/stm32h743_frame_dma2d;tests/google/h743_frame_dma2d_test.cpp;docs/design/io-extension-boundaries.md |
|
Frame completion backpressure external memory and 2D DMA ownership |
|
in_progress |
|
not_qualified |
|
not_executed |
|
Codex |