32static const char*
const s_tag =
"ra8_io_blockdev_sdram";
40typedef enum : uint32_t {
static const char * s_tag
Logging / check tag.
Annotation-attribute framework macros for ra8-firmware.
#define RA8_INTERNAL
Marker that a function is intended to be static (file-local).
Validation and Error-Checking Macros for ra8-firmware.
#define RA8_RETURN_ON_ERROR(err, tag, message)
Early return on error, propagating the code upward.
#define RA8_CHECK_NULL_PTR(ptr, tag, message)
Reject nullptr pointer, returning k_ra8_err_null_ptr.
Error Code Definitions for ra8-firmware.
@ k_ra8_err_invalid_size
Invalid size parameter (too large, too small, or misaligned).
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
@ k_ra8_io_block_size_bytes
Bytes per logical block (the only size).
ra8_io block-device backend over a caller-owned RAM buffer.
ra8_err_t ra8_io_blockdev_ram_init(ra8_io_blockdev_t *bd, ra8_io_blockdev_ram_state_t *state, uint8_t *storage, uint32_t block_count, bool read_only)
Bind a RAM block-device backend into a caller-owned handle.
ra8_io_sdram_const_t
SDRAM-backend layout constants.
@ k_ra8_io_sdram_min_blocks
Smallest legal device size, in blocks.
static uint32_t internal_sdram_max_blocks(void)
Maximum block count the SDRAM window can hold.
ra8_err_t ra8_io_blockdev_sdram_init(ra8_io_blockdev_t *bd, ra8_io_blockdev_ram_state_t *state, uint32_t block_count)
Bring up the SDRAM controller and bind it as a volatile ramdisk.
ra8_io block-device backend over the external 64 MiB SDRAM window.
External SDRAM controller driver (framework).
ra8_err_t ra8_sdramc_init(void)
Initialise the external SDRAM at k_ra8_sdram_base_addr.
External SDRAM controller register layout for the Renesas RA8D2.
@ k_ra8_sdram_base_addr
External SDRAM window.
@ k_ra8_sdram_size_bytes
64 MiB.
Caller-owned private state for a RAM block device.
Caller-allocated block-device handle binding a backend to its context.