|
ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
|
Caller-supplied storage + loader for ra8_vmem_init. More...
#include <ra8_vmem.h>
Data Fields | |
| uint8_t * | frame_mem |
| frame_count * frame_bytes of page storage. | |
| uint32_t | frame_bytes |
| Bytes per frame (page size, e.g. | |
| uint32_t | frame_count |
| Number of frames. | |
| ra8_vmem_frame_t * | meta |
| frame_count metadata entries. | |
| ra8_vmem_key_t * | keys |
| frame_count key-storage entries. | |
| int32_t * | buckets |
| bucket_count hash-bucket heads. | |
| uint32_t | bucket_count |
| Number of hash buckets (>= 1). | |
| ra8_vmem_loader_fn | loader |
| Page-fill callback (the storage DIP seam). | |
| void * | loader_ctx |
Opaque context passed to loader. | |
| uint8_t | protected_pct |
| SLRU protected-segment share, 1..100; 0 selects the 75% default. | |
Caller-supplied storage + loader for ra8_vmem_init.
All arrays are caller-owned and must out-live the cache. Carve them once from a tier arena at bring-up (frame storage from SDRAM, the metadata + keys + buckets from DTCM for the hot path).
Definition at line 151 of file ra8_vmem.h.
| uint32_t ra8_vmem_cfg_t::bucket_count |
Number of hash buckets (>= 1).
Definition at line 158 of file ra8_vmem.h.
Referenced by ra8_vmem_init().
| int32_t* ra8_vmem_cfg_t::buckets |
bucket_count hash-bucket heads.
Definition at line 157 of file ra8_vmem.h.
Referenced by ra8_vmem_init().
| uint32_t ra8_vmem_cfg_t::frame_bytes |
Bytes per frame (page size, e.g.
4096).
Definition at line 153 of file ra8_vmem.h.
Referenced by internal_drive(), ra8_vmem_get(), ra8_vmem_init(), and ra8_vmem_stream_init().
| uint32_t ra8_vmem_cfg_t::frame_count |
| uint8_t* ra8_vmem_cfg_t::frame_mem |
frame_count * frame_bytes of page storage.
Definition at line 152 of file ra8_vmem.h.
Referenced by ra8_vmem_init(), and ra8_vmem_stats().
| ra8_vmem_key_t* ra8_vmem_cfg_t::keys |
frame_count key-storage entries.
Definition at line 156 of file ra8_vmem.h.
Referenced by ra8_vmem_init().
| ra8_vmem_loader_fn ra8_vmem_cfg_t::loader |
Page-fill callback (the storage DIP seam).
Definition at line 159 of file ra8_vmem.h.
Referenced by internal_vmem_fill().
| void* ra8_vmem_cfg_t::loader_ctx |
Opaque context passed to loader.
Definition at line 160 of file ra8_vmem.h.
Referenced by internal_vmem_fill().
| ra8_vmem_frame_t* ra8_vmem_cfg_t::meta |
frame_count metadata entries.
Definition at line 155 of file ra8_vmem.h.
Referenced by ra8_vmem_init().
| uint8_t ra8_vmem_cfg_t::protected_pct |
SLRU protected-segment share, 1..100; 0 selects the 75% default.
See the file comment "Tuning the protected/probationary split" for how to size it (#232).
Definition at line 161 of file ra8_vmem.h.
Referenced by ra8_vmem_init().