79typedef enum : uintptr_t {
95typedef enum : uintptr_t {
116typedef enum : uint8_t {
137typedef enum : uint8_t {
148typedef enum : uint16_t {
154 (uint16_t)(0x3U << (uint16_t)
168typedef enum : uint8_t {
187typedef enum : uint8_t {
197typedef enum : uint16_t {
199 (uint16_t)(0xFU << (uint16_t)
202 (uint16_t)(0xFU << (uint16_t)
219typedef enum : uint16_t {
235typedef enum : uint32_t {
Annotation-attribute framework macros for ra8-firmware.
#define RA8_HW_REGISTER_ACCESS
Mark an MMIO accessor function (returns volatile register pointer).
ra8_pdg_gtdlycr_bit_t
Bit positions inside GTDLYCR (HUM Ch 23.2.1 p 1154).
@ k_ra8_pdg_gtdlycr_bit_dllen
DLL Operation Enable.
@ k_ra8_pdg_gtdlycr_shift_frange
FRANGE[1:0] starts at bit 8.
@ k_ra8_pdg_gtdlycr_bit_dlyrst
PDG circuit reset.
ra8_pdg_count_t
Channel count and per-channel structural sizes.
@ k_ra8_pdg_off_gtdlyr0
First GTDLYR offset (rises).
@ k_ra8_pdg_off_after_cr2
End of GTDLYCR2 (start of reserved gap).
@ k_ra8_pdg_channel_count
4 GPT channels mapped to PDG (0..3).
@ k_ra8_pdg_slot_count
4 ch * 2 pin * 2 edge = 16 delay slots.
@ k_ra8_pdg_edge_count
Rising + falling delay slots.
@ k_ra8_pdg_pin_count
GTIOCnA + GTIOCnB.
ra8_pdg_dly_field_t
Layout of the GTDLYRnA / GTDLYRnB / GTDLYFnA / GTDLYFnB delay registers (HUM Ch 23....
@ k_ra8_pdg_dly_div_high
Divider in the 155..300 MHz band.
@ k_ra8_pdg_dly_max
Maximum legal delay code.
@ k_ra8_pdg_dly_div_low
Divider in the 80..160 MHz band.
@ k_ra8_pdg_dly_mask
DLY[6:0] occupies the low 7 bits.
ra8_pdg_frange_t
GTDLYCR.FRANGE encoding (HUM Ch 23.2.1 p 1154).
@ k_ra8_pdg_frange_80_160_mhz
80..160 MHz, 1/128 step.
@ k_ra8_pdg_frange_invalid
0b11 – "Setting prohibited" sentinel.
@ k_ra8_pdg_frange_155_300_mhz
155..300 MHz, 1/64 step.
ra8_pdg_gtdlycr_mask_t
Masks for GTDLYCR fields.
@ k_ra8_pdg_gtdlycr_mask_dllen
RA8 pdg gtdlycr mask dllen.
@ k_ra8_pdg_gtdlycr_mask_dlyrst
RA8 pdg gtdlycr mask dlyrst.
@ k_ra8_pdg_gtdlycr_mask_frange
RA8 pdg gtdlycr mask frange.
ra8_pdg_gtdlycr2_shift_t
Bit positions for GTDLYCR2 fields (HUM Ch 23.2.2 p 1155).
@ k_ra8_pdg_gtdlycr2_shift_dlyen
DLYEN field starts at bit 8.
@ k_ra8_pdg_gtdlycr2_shift_dlybs
DLYBS field starts at bit 0.
ra8_pdg_addr_t
Memory-mapped base addresses for the PDG block.
@ k_ra8_pdg_base_addr
PDG Secure alias.
@ k_ra8_pdg_ns_base_addr
PDG Non-Secure alias.
ra8_pdg_freq_band_t
Per-band absolute frequency boundaries (Hz) for FRANGE.
@ k_ra8_pdg_freq_high_min_hz
155 MHz.
@ k_ra8_pdg_freq_low_max_hz
160 MHz.
@ k_ra8_pdg_freq_high_max_hz
300 MHz.
@ k_ra8_pdg_freq_overlap_bot
Bottom of overlap zone.
@ k_ra8_pdg_freq_low_min_hz
80 MHz.
@ k_ra8_pdg_freq_overlap_top
Top of the overlap zone.
ra8_pdg_off_t
Byte offsets of PDG registers (HUM Ch 23.2.1..23.2.6).
@ k_ra8_pdg_off_gtdlyf0b
Ch0 GTIOCnB fall.
@ k_ra8_pdg_off_gtdlyr0a
Ch0 GTIOCnA rise.
@ k_ra8_pdg_off_gtdlyr0b
Ch0 GTIOCnB rise.
@ k_ra8_pdg_off_gtdlyf0a
Ch0 GTIOCnA fall.
@ k_ra8_pdg_off_gtdlycr
Delay control reg.
@ k_ra8_pdg_off_gtdlycr2
Bypass / enable reg.
ra8_pdg_gtdlycr2_mask_t
Masks for GTDLYCR2 fields.
@ k_ra8_pdg_gtdlycr2_mask_dlybs
RA8 pdg gtdlycr2 mask dlybs.
@ k_ra8_pdg_gtdlycr2_mask_dlyen
RA8 pdg gtdlycr2 mask dlyen.
static volatile r_pdg_regs_t * ra8_pdg(void)
Pointer to the PDG block.
Two consecutive 16-bit delay cells that match the PDG layout.
volatile uint16_t B
+2 GTIOCnB delay code (DLY[6:0]).
volatile uint16_t A
+0 GTIOCnA delay code (DLY[6:0]).
PDG block register window mapped at k_ra8_pdg_base_addr.
volatile uint16_t GTDLYCR
+0x000 HUM 23.2.1 p 1154
r_pdg_dly_pair_t GTDLYR[k_ra8_pdg_channel_count]
+0x018..0x027 rise.
r_pdg_dly_pair_t GTDLYF[k_ra8_pdg_channel_count]
+0x028..0x037 fall.
volatile uint8_t reserved_004[k_ra8_pdg_off_gtdlyr0 - k_ra8_pdg_off_after_cr2]
+0x004..0x017 reserved.
volatile uint16_t GTDLYCR2
+0x002 HUM 23.2.2 p 1155