ra8-firmware 0.1.0
Bare-metal firmware for the Renesas RA8 family (RA8D2 / RA8P1)
Loading...
Searching...
No Matches
ra8_esp_hosted_irq_route Struct Reference

One row of the pin-to-ICU-channel routing table. More...

Data Fields

uint16_t pin
 Packed RA8_PIN(port, pin) code for the net.
uint8_t irq
 ICU channel, or k_ra8_esp_hosted_irq_none.

Detailed Description

One row of the pin-to-ICU-channel routing table.

A flat pair rather than a sparse array indexed by pin: the table holds a handful of rows, and a linear scan over a compile-time-sized array cannot be indexed out of range, which keeps the lookup inside NASA Power of 10 Rule 2 without a bounds check on caller-supplied data.

Invariant
pin is a packed RA8_PIN(port, pin) code.
irq is 0..15 or k_ra8_esp_hosted_irq_none.
Example:
const ra8_esp_hosted_irq_route_row_t row = { .pin = 0x0006U, .irq = 11U };
struct ra8_esp_hosted_irq_route ra8_esp_hosted_irq_route_row_t
See also
ra8_esp_hosted_pin_irq_num
Since
0.1.0

Definition at line 91 of file ra8_esp_hosted_pins.c.

Field Documentation

◆ irq

uint8_t ra8_esp_hosted_irq_route::irq

ICU channel, or k_ra8_esp_hosted_irq_none.

Definition at line 93 of file ra8_esp_hosted_pins.c.

◆ pin

uint16_t ra8_esp_hosted_irq_route::pin

Packed RA8_PIN(port, pin) code for the net.

Definition at line 92 of file ra8_esp_hosted_pins.c.


The documentation for this struct was generated from the following file: