|
ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
|
The one seam between ra8_c6link and the wire that reaches the C6. More...
Go to the source code of this file.
Data Structures | |
| struct | ra8_c6link_transport |
| Function-pointer seam a backend fills so the facade can reach the C6. More... | |
Typedefs | |
| typedef struct ra8_c6link_transport | ra8_c6link_transport_t |
The one seam between ra8_c6link and the wire that reaches the C6.
Everything ra8_c6link knows about hardware is these three function pointers. The facade above them frames, checksums, encodes protobuf and correlates responses; none of that changes if the C6 is reached over full-duplex SPI today and over something else tomorrow, so none of it is allowed to name a peripheral.
Two implementations exist and are interchangeable (Liskov):
DATA_READY is deliberately absent. The board routes it and the port reads it, but no first-party evidence yet describes how the co-processor drives it under load, and a facade that gated transactions on an unproven signal would be guessing. Until #492 measures it, this link discovers pending receive data by clocking a transaction, which is what the bench-proven bring-up did.
Definition in file ra8_c6link_transport.h.
| typedef struct ra8_c6link_transport ra8_c6link_transport_t |