|
Zephyr API Documentation 4.3.0-rc1
A Scalable Open Source RTOS
|
Software-managed ISR table. More...
#include <zephyr/device.h>#include <zephyr/sys/iterable_sections.h>#include <zephyr/types.h>#include <zephyr/toolchain.h>#include <zephyr/sys/util.h>Go to the source code of this file.
Macros | |
| #define | INTC_BASE_ISR_TBL_OFFSET(node_id) |
| Get an interrupt controller node's level base ISR table offset. | |
| #define | INTC_INST_ISR_TBL_OFFSET(inst) |
| Get the SW ISR table offset for an instance of interrupt controller. | |
| #define | INTC_CHILD_ISR_TBL_OFFSET(node_id) |
| Get the SW ISR table offset for a child interrupt controller. | |
| #define | IRQ_PARENT_ENTRY_DEFINE(_name, _dev, _irq, _offset, _level) |
| Register an interrupt controller with the software ISR table. | |
| #define | ISR_FLAG_DIRECT BIT(0) |
| This interrupt gets put directly in the vector table. | |
| #define | IRQ_TABLE_SIZE (CONFIG_NUM_IRQS - CONFIG_GEN_IRQ_START_VECTOR) |
Software-managed ISR table.
Data types for a software-managed ISR table, with a parameter per-ISR.
| #define INTC_BASE_ISR_TBL_OFFSET | ( | node_id | ) |
Get an interrupt controller node's level base ISR table offset.
| node_id | node identifier of the interrupt controller |
| #define INTC_CHILD_ISR_TBL_OFFSET | ( | node_id | ) |
Get the SW ISR table offset for a child interrupt controller.
This macro is a alternative form of the INTC_INST_ISR_TBL_OFFSET. This is used by pseudo interrupt controller devices that are child of a main interrupt controller device.
| node_id | node identifier of the child interrupt controller |
| #define INTC_INST_ISR_TBL_OFFSET | ( | inst | ) |
Get the SW ISR table offset for an instance of interrupt controller.
| inst | DT_DRV_COMPAT interrupt controller driver instance number |
| #define IRQ_PARENT_ENTRY_DEFINE | ( | _name, | |
| _dev, | |||
| _irq, | |||
| _offset, | |||
| _level ) |
Register an interrupt controller with the software ISR table.
| _name | Name of the interrupt controller (must be unique) |
| _dev | Pointer to the interrupt controller device instance |
| _irq | Interrupt controller IRQ number |
| _offset | Software ISR table offset of the interrupt controller |
| _level | Interrupt controller aggregator level |
| #define IRQ_TABLE_SIZE (CONFIG_NUM_IRQS - CONFIG_GEN_IRQ_START_VECTOR) |
| #define ISR_FLAG_DIRECT BIT(0) |
This interrupt gets put directly in the vector table.