41typedef enum : uint64_t {
51typedef enum : uint8_t {
58typedef enum : uint32_t {
101 const uint64_t off = addr - (uint64_t)
k_lvd_base;
103 return s_lvd.pvd1cr1;
106 return s_lvd.pvd2cr1;
132 const uint64_t off = addr - (uint64_t)
k_lvd_base;
134 s_lvd.pvd1cr1 = (uint8_t)value;
136 s_lvd.pvd2cr1 = (uint8_t)value;
151 if (
s_lvd.reads == 0U) {
Decentralized peripheral-block registry for the board emulator core.
void board_periph_register_block(const board_periph_block_t *block)
Register a peripheral block's descriptor with the core registry.
lvd_geom_t
PVD status-window geometry (ra8_lvd_regs.h).
@ k_lvd_off_pvd1sr
PVD1SR status (8b).
@ k_lvd_off_pvd2sr
PVD2SR status (8b).
@ k_lvd_off_pvd2cr1
PVD2CR1 control (8b).
@ k_lvd_span
PVD1CR1/PVD1SR/PVD2CR1/PVD2SR.
@ k_lvd_off_pvd1cr1
PVD1CR1 control (8b).
static RA8_INTERNAL uint64_t internal_lvd_read(uc_engine *uc, uint64_t addr, unsigned size)
MMIO read inside the PVD status window.
static RA8_INTERNAL void internal_lvd_reset(void)
Reset the LVD model to power-on state.
lvd_field_t
PVDmSR field masks + the healthy-rail status value (ra8_lvd.c).
@ k_lvd_sr_mon
MON live "VCC above Vdetm" flag (bit 1).
@ k_lvd_sr_healthy
MON = above, DET = 0: a healthy rail.
@ k_lvd_sr_det
DET latched threshold-crossing (bit 0).
lvd_order_t
Per-tick order slot for the LVD block (relative order only).
@ k_lvd_block_order
After the CAC block; report order.
static RA8_INTERNAL void internal_lvd_report(void)
End-of-run LVD section: status reads served.
static RA8_INTERNAL void internal_lvd_block_register(void)
Register the LVD status window before main (host constructor).
static RA8_INTERNAL void internal_lvd_write(uc_engine *uc, uint64_t addr, unsigned size, uint64_t value)
MMIO write inside the PVD status window.
static const board_periph_block_t s_k_lvd_block
LVD status-window descriptor (self-registered with the core).
Bounded raw-descriptor I/O seam for the RA8 emulator.
emu_io_result_t priv_emu_io_errf(const char *format,...)
Format bounded text and write it to the injected error descriptor.
#define RA8_INTERNAL
Marker that a function is intended to be static (file-local).
A modelled peripheral block's self-description for the core registry.
PVD control-byte shadows (status bytes are synthesised).
uint8_t pvd2cr1
PVD2CR1 control shadow.
uint8_t pvd1cr1
PVD1CR1 control shadow.
uint32_t reads
Status reads served (report).