![]() |
RTEMS 6.1
|
This source file contains the generic interrupt controller support implementation. More...
Functions | |
| RTEMS_WEAK rtems_interrupt_entry ** | bsp_interrupt_get_dispatch_table_slot (rtems_vector_number index) |
| Gets a reference to the interrupt handler table slot associated with the index. | |
| rtems_status_code | bsp_interrupt_check_and_lock (rtems_vector_number vector, rtems_interrupt_handler routine) |
| Checks the vector and routine. When the checks were successful, the interrupt support lock will be obtained. | |
| rtems_interrupt_entry * | bsp_interrupt_entry_find (rtems_vector_number vector, rtems_interrupt_handler routine, void *arg, rtems_interrupt_entry ***previous_next) |
| void | bsp_interrupt_initialize (void) |
| Initialize Interrupt Manager implementation. | |
| rtems_status_code | rtems_interrupt_entry_install (rtems_vector_number vector, rtems_option options, rtems_interrupt_entry *entry) |
| Installs the interrupt entry at the interrupt vector. | |
Variables | |
| rtems_interrupt_entry * | bsp_interrupt_dispatch_table [BSP_INTERRUPT_DISPATCH_TABLE_SIZE] |
| Each member of this table references the first installed entry at the corresponding interrupt vector or is NULL. | |
| uint8_t | bsp_interrupt_handler_unique_table [(BSP_INTERRUPT_DISPATCH_TABLE_SIZE+7+1)/8] |
| This table contains a bit map which indicates if an entry is unique or shared. | |
This source file contains the generic interrupt controller support implementation.
| rtems_status_code bsp_interrupt_check_and_lock | ( | rtems_vector_number | vector, |
| rtems_interrupt_handler | handler | ||
| ) |
Checks the vector and routine. When the checks were successful, the interrupt support lock will be obtained.
| vector | is the interrupt vector number to check. |
| routine | is the routine to check. |
| RTEMS_SUCCESSFUL | The requested operation was successful. |
| RTEMS_INCORRECT_STATE | The interrupt support was not initialized. |
| RTEMS_CALLED_FROM_ISR | The function was called from within interrupt context. |
| RTEMS_INVALID_ADDRESS | The routine parameter was NULL. |
| RTEMS_INVALID_ID | There was no interrupt vector associated with the number specified by vector. |
| RTEMS_WEAK rtems_interrupt_entry ** bsp_interrupt_get_dispatch_table_slot | ( | rtems_vector_number | index | ) |
Gets a reference to the interrupt handler table slot associated with the index.
| uint8_t bsp_interrupt_handler_unique_table[(BSP_INTERRUPT_DISPATCH_TABLE_SIZE+7+1)/8] |
This table contains a bit map which indicates if an entry is unique or shared.
If the bit associated with a vector is set, then the entry is unique, otherwise it may be shared. If the bit with index BSP_INTERRUPT_DISPATCH_TABLE_SIZE is set, then the interrupt support is initialized, otherwise it is not initialized.