|
ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
|
RSIP-E50D register base address, byte offsets, and layout asserts. More...
#include <stddef.h>#include <stdint.h>Go to the source code of this file.
Macros | |
| #define | RA8_RSIP_ASSERT_ALIGN(off_) |
| RA8 RSIP ASSERT ALIGN. | |
| #define | RA8_RSIP_ASSERT_IN_WIN(off_, lo_, hi_) |
| RA8 RSIP ASSERT IN WIN. | |
RSIP-E50D register base address, byte offsets, and layout asserts.
Sub-header of ra8_rsip_regs.h. Carries the memory-mapped base address (ra8_rsip_addr_t), the full byte-offset table for every register the HAL touches (ra8_rsip_off_t), the sub-block window boundary constants (ra8_rsip_window_t), and the compile-time layout-insurance asserts (alignment + sub-block containment sweep) that lock the offset table at build time.
The RSIP-E50D engine on the RA8D2 is an isolated security subsystem (HUM Ch 52 "Renesas Secure IP (RSIP-E50D)" p 3302). It is mailbox-driven; the HUM body for Ch 52 (p 3302-3307) does not publish a register table, so every offset here is cross-referenced to the FSP primitive register file crypto_procedures_protected/.../ra8_rsip_e50d/r_rsip_reg.h.
Definition in file ra8_rsip_regs_offsets.h.
| #define RA8_RSIP_ASSERT_ALIGN | ( | off_ | ) |
RA8 RSIP ASSERT ALIGN.
Definition at line 253 of file ra8_rsip_regs_offsets.h.
| #define RA8_RSIP_ASSERT_IN_WIN | ( | off_, | |
| lo_, | |||
| hi_ ) |
RA8 RSIP ASSERT IN WIN.
Definition at line 258 of file ra8_rsip_regs_offsets.h.
| enum ra8_rsip_addr_t : uintptr_t |
Memory-mapped base address for the RSIP-E50D engine.
Verified against FSP r_rsip_addr.h for the E50D variant (RSIP_PRV_ADDR_BASE = 0x403B0000UL). The block lives inside the secure peripheral bus window at 0x40000000, gated by MSTPCRC.MSTPC31 (HUM Ch 11.2.8 "MSTPCRC" p 446 + HUM Ch 52.3.2 "Module-Stop Function Setting" p 3307).
| Enumerator | |
|---|---|
| k_ra8_rsip_base_addr | RSIP-E50D mailbox window base. |
Definition at line 42 of file ra8_rsip_regs_offsets.h.
| enum ra8_rsip_off_t : uint16_t |
Byte offsets of every register the HAL touches.
Offsets are derived from the FSP primitive register file r_rsip_reg.h and the WR1_PROG/RD1_MASK/WAIT_STS sites scattered through crypto_procedures_protected/.../ra8_rsip_e50d. Each cell is a 32-bit word. The HUM body for Ch 52 (p 3302-3307) does not enumerate an explicit register table; the engine is mailbox-driven.
Definition at line 58 of file ra8_rsip_regs_offsets.h.
| enum ra8_rsip_window_t : uint16_t |
Sub-block boundary constants used by the layout asserts below.
The HUM body for Ch 52 (p 3302-3307) does not publish a register table because the engine is mailbox-driven, so the only authoritative cross-reference for individual register offsets is the FSP primitive file crypto_procedures_protected/.../ra8_rsip_e50d. The sub-block windows below come straight from the file-header table earlier in this file and from the FSP RSIP_PRV_ADDR_VAL_* macros in r_rsip_reg.h (anchors 0x0000H, 0x1000H, 0x1420H, 0x1440H, 0x1600H). Every offset emitted in ra8_rsip_off_t must land inside one of these windows; the static_asserts that follow lock that contract at compile time.
Definition at line 207 of file ra8_rsip_regs_offsets.h.