65typedef enum : uintptr_t {
133typedef enum : uint8_t {
138 "r_port_regs_t must be exactly 16 bytes");
266typedef enum : uint8_t {
Annotation-attribute framework macros for ra8-firmware.
#define RA8_HW_REGISTER_ACCESS
Mark an MMIO accessor function (returns volatile register pointer).
Named Bit Positions and Masks for Register Manipulation.
Typed Port / Pin Constants for the RA8D2 IOPORT Module.
ra8_port_t
Port indices for the RA8D2 IOPORT module.
@ k_ra8_port_max
Highest valid port index.
static volatile r_port_regs_t * ra8_port4(void)
Get PORT4 registers.
ra8_pcntr_half_t
Bit shifts for the halves inside each PCNTR register.
@ k_ra8_pcntr_low_half_shift
PDR/PIDR/POSR/EOSR half.
@ k_ra8_pcntr_high_half_shift
PODR/EIDR/PORR/EORR half.
static volatile r_port_regs_t * ra8_port14(void)
Get PORT14 registers.
static volatile r_port_regs_t * ra8_port10(void)
Get PORT10 registers.
static volatile r_port_regs_t * ra8_port12(void)
Get PORT12 registers.
static volatile r_port_regs_t * ra8_port13(void)
Get PORT13 registers.
static volatile r_port_regs_t * ra8_port11(void)
Get PORT11 registers.
static volatile r_port_regs_t * ra8_port1(void)
Get PORT1 registers.
static volatile r_port_regs_t * ra8_port8(void)
Get PORT8 registers.
ra8_port_regs_size_t
Expected byte size of the per-port register window.
@ k_ra8_port_regs_bytes
RA8 port registers bytes.
static volatile r_port_regs_t * ra8_port3(void)
Get PORT3 registers.
static volatile r_port_regs_t * ra8_port0(void)
Get PORT0 registers.
static volatile r_port_regs_t * ra8_port5(void)
Get PORT5 registers.
static volatile r_port_regs_t * ra8_port9(void)
Get PORT9 registers.
static volatile r_port_regs_t * ra8_port(ra8_port_t port)
Get the PORT register window for a given port index.
static volatile r_port_regs_t * ra8_port6(void)
Get PORT6 registers.
static volatile r_port_regs_t * ra8_port2(void)
Get PORT2 registers.
@ k_ra8_port0_base_addr
RA8 port0 base address.
@ k_ra8_port4_base_addr
RA8 port4 base address.
@ k_ra8_port_stride
Bytes between adjacent ports.
@ k_ra8_port5_base_addr
RA8 port5 base address.
@ k_ra8_port9_base_addr
RA8 port9 base address.
@ k_ra8_port8_base_addr
RA8 port8 base address.
@ k_ra8_port12_base_addr
RA8 port12 base address.
@ k_ra8_port11_base_addr
RA8 port11 base address.
@ k_ra8_port7_base_addr
RA8 port7 base address.
@ k_ra8_port3_base_addr
RA8 port3 base address.
@ k_ra8_port2_base_addr
RA8 port2 base address.
@ k_ra8_port14_base_addr
RA8 port14 base address.
@ k_ra8_port1_base_addr
RA8 port1 base address.
@ k_ra8_port13_base_addr
RA8 port13 base address.
@ k_ra8_port10_base_addr
RA8 port10 base address.
@ k_ra8_port6_base_addr
RA8 port6 base address.
static volatile r_port_regs_t * ra8_port7(void)
Get PORT7 registers.
Per-port IOPORT register window.
volatile uint32_t PCNTR2
PCNTR2 – { EIDR[31:16], PIDR[15:0] } (read-only).
volatile uint32_t PCNTR3
PCNTR3 – { PORR[31:16], POSR[15:0] } (write-only).
volatile uint32_t PCNTR1
PCNTR1 – { PODR[31:16], PDR[15:0] }.
volatile uint32_t PCNTR4
PCNTR4 – { EORR[31:16], EOSR[15:0] }.