Go to the source code of this file.
Defines | |
#define | __irq |
#define | __fiq |
#define | NESTED_INTERRUPT 0 |
#define | I_Bit 0x80 |
#define | F_Bit 0x40 |
#define | SYS32Mode 0x1f |
#define | IRQ32Mode 0x12 |
#define | FIQ32Mode 0x11 |
#define | WDT_INT 0 |
#define | SWI_INT 1 |
#define | ARM_CORE0_INT 2 |
#define | ARM_CORE1_INT 3 |
#define | TIMER0_INT 4 |
#define | TIMER1_INT 5 |
#define | UART0_INT 6 |
#define | UART1_INT 7 |
#define | PWM0_INT 8 |
#define | I2C0_INT 9 |
#define | SPI0_INT 10 |
#define | SPI1_INT 11 |
#define | PLL_INT 12 |
#define | RTC_INT 13 |
#define | EINT0_INT 14 |
#define | EINT1_INT 15 |
#define | EINT2_INT 16 |
#define | EINT3_INT 17 |
#define | ADC0_INT 18 |
#define | I2C1_INT 19 |
#define | BOD_INT 20 |
#define | ADC1_INT 21 |
#define | USB_INT 22 |
#define | IRQ_SLOT_EN 0x20 |
#define | VIC_SIZE 16 |
#define | VECT_ADDR_INDEX 0x100 |
#define | VECT_CNTL_INDEX 0x200 |
#define | IENABLE ; |
#define | IDISABLE ; |
Functions | |
void | irq_vic_init (void) |
bool_t | irq_install (uint32_t number, void *p_handler) |
bool_t | irq_uninstall (uint32_t number) |
Low-level interrupt support function.
Definition in file irq.h.
bool_t irq_install | ( | uint32_t | number, | |
void * | p_handler | |||
) |
Install interrupt handler.
The maximum VIC size is 16 but there are 32 interrupt request inputs. Not all of them can be installed into the VIC table at the same time. The order of the interrupt request installation is first come, first served.
number | Number of interrupt. | |
p_handler | Address of interrupt handler. |
bool_t irq_uninstall | ( | uint32_t | number | ) |
Uninstall interrupt handler.
Find the interrupt handler installed in the VIC based on the interrupt number, set the location back to NULL to uninstall it.
number | Number of interrupt. |