|
ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
|
Backend implementation contract for the ra8_io block-device fabric. More...
Go to the source code of this file.
Data Structures | |
| struct | ra8_io_blockdev_iface |
| Opaque to applications – backends implement this internally and export a binding helper through their own header. More... | |
Backend implementation contract for the ra8_io block-device fabric.
This implementer-facing header is the Dependency Inversion seam for storage backends. A library that presents an ra8_io_blockdev_t includes this header, defines one const ra8_io_blockdev_iface_t, and binds it into the public handle. Application consumers use only ra8_io_blockdev.h and never need the concrete callback table.
Keeping this contract under inc/ is intentional: adapters such as ra8_ftl are separate libraries and must be able to implement the abstraction without reaching into libs/ra8_io/src/. The callback contract remains free of platform and device types, so host, RAM, flash, SD, and future architectures substitute behind the same handle.
Definition in file ra8_io_blockdev_backend.h.