Data Structures | |
| struct | Interrupt_Config |
| struct | Interrupt_NmiStatus |
Functions | |
| void | Interrupt_defaultHandler (void) |
| void | Interrupt_defaultNMIHandler (void) |
| void | Interrupt_clearEsmEaFlags (Interrupt_NmiStatus *nmiStatus) |
| static void | Interrupt_enableGlobal (void) |
| static void | Interrupt_disableGlobal (void) |
| static void | Interrupt_enable (uint32_t intNum) |
| static void | Interrupt_disable (uint32_t intNum) |
| static void | Interrupt_force (uint32_t intNum) |
| static void | Interrupt_clearFlag (uint32_t intNum) |
| static void | Interrupt_clearOverflowFlag (uint32_t intNum) |
| static void | Interrupt_register (uint32_t intNum, void(*handler)(void)) |
| static void | Interrupt_unregister (uint32_t intNum) |
| static void | Interrupt_setThreshold (uint8_t threshold) |
| static void | Interrupt_setGroupMask (uint8_t groupMask) |
| static void | Interrupt_setPriority (uint32_t intNum, uint8_t priority) |
| static void | Interrupt_setContextID (uint32_t intNum, Interrupt_Context contextID) |
| static void | Interrupt_setLinkOwner (uint32_t intNum, SSU_Link linkOwner) |
| static void | Interrupt_setAPILink (uint32_t intNum, SSU_APILink apiLinkID) |
| static void | Interrupt_setActiveContextID (Interrupt_Context contextID) |
| static void | Interrupt_enableSupervisorIgnoreINTE (void) |
| static void | Interrupt_disableSupervisorIgnoreINTE (void) |
| static void | Interrupt_setRTINTSPWarning (uint8_t level, uint8_t priority) |
| static void | Interrupt_setINTSP (SSU_Stack stack) |
| static void | Interrupt_lockBootLinkUpdates (void) |
| static void | Interrupt_lockRegister (uint32_t registers) |
| static void | Interrupt_unlockRegister (uint32_t registers) |
| static void | Interrupt_commitRegister (uint32_t registers) |
| void | Interrupt_initModule (void) |
| void | Interrupt_initVectorTable (void) |
| void | Interrupt_configChannel (uint32_t intNum, Interrupt_Config config) |
| void | Interrupt_configNMI (void(*handler)(void), SSU_Link linkOwner) |
Enumerations | |
| enum | Interrupt_Context { INTERRUPT_CONTEXTID_0 , INTERRUPT_CONTEXTID_1 , INTERRUPT_CONTEXTID_2 , INTERRUPT_CONTEXT_AGNOSTIC } |
Macros | |
| #define | INTERRUPT_NO_OF_CHANNELS 256U |
| Total number of interrupts available in the device. | |
| #define | INTERRUPT_LINK_REGS PIPE_LOCK_LINK_LOCK |
| #define | INTERRUPT_CONFIG_REGS PIPE_LOCK_CONFIG_LOCK |
| #define | INTERRUPT_GLOBAL_REGS PIPE_LOCK_GLOBAL_LOCK |
| #define | INTERRUPT_VECTOR_REG PIPE_LOCK_VECT_LOCK |
| #define INTERRUPT_NO_OF_CHANNELS 256U |
Total number of interrupts available in the device.
| #define INTERRUPT_LINK_REGS PIPE_LOCK_LINK_LOCK |
Values that can be passed to Interrupt_lockRegister(), Interrupt_unlockRegister(), Interrupt_commitRegister() as the registers parameter.
| #define INTERRUPT_CONFIG_REGS PIPE_LOCK_CONFIG_LOCK |
| #define INTERRUPT_GLOBAL_REGS PIPE_LOCK_GLOBAL_LOCK |
| #define INTERRUPT_VECTOR_REG PIPE_LOCK_VECT_LOCK |
| enum Interrupt_Context |
Values that can be passed to Interrupt_configChannel() as contextID parameter.
| Enumerator | |
|---|---|
| INTERRUPT_CONTEXTID_0 | |
| INTERRUPT_CONTEXTID_1 | |
| INTERRUPT_CONTEXTID_2 | |
| INTERRUPT_CONTEXT_AGNOSTIC | |
|
extern |
|
extern |
|
extern |
|
inlinestatic |
Global enable for INT and RTINT.
|
inlinestatic |
Global disable for INT and RTINT.
|
inlinestatic |
Enables an interrupt.
| intNum | specifies the interrupt to be enabled. |
The specified interrupt is enabled in the interrupt controller. Other enables for the interrupt (such as at the peripheral level) are unaffected by this function.
The available intNum values are supplied in inc/hw_ints.h.
|
inlinestatic |
Disables an interrupt.
| intNum | specifies the interrupt to be disabled. |
The specified interrupt is disabled in the interrupt controller. Other enables for the interrupt (such as at the peripheral level) are unaffected by this function.
The available intNum values are supplied in inc/hw_ints.h.
|
inlinestatic |
Force an interrupt
| intNum | specifies the interrupt to be forced. |
The available intNum values are supplied in inc/hw_ints.h.
|
inlinestatic |
Clear the interrupt flag
| intNum | specifies the interrupt flag to be cleared. |
The available intNum values are supplied in inc/hw_ints.h.
|
inlinestatic |
Clear the interrupt overflow flag
| intNum | specifies the interrupt flag to be cleared. |
The available intNum values are supplied in inc/hw_ints.h.
|
inlinestatic |
Registers a function to be called when an interrupt occurs.
| intNum | specifies the interrupt in question. |
| handler | is a pointer to the function to be called. |
This function is used to specify the handler function to be called when the given interrupt is asserted to the processor. When the interrupt occurs, if it is enabled (via Interrupt_enable()), the handler function will be called in interrupt context. Since the handler function can preempt other code, care must be taken to protect memory or peripherals that are accessed by the handler and other non-handler code.
The available intNum values are supplied in inc/hw_ints.h.
|
inlinestatic |
Unregisters the function to be called when an interrupt occurs.
| intNum | specifies the interrupt in question. |
This function is used to indicate that a default handler Interrupt_defaultHandler() should be called when the given interrupt is asserted to the processor. Call Interrupt_disable() to disable the interrupt before calling this function.
The available intNum values are supplied in inc/hw_ints.h.
|
inlinestatic |
Set the Threshold for RTINT
| threshold | Threshold value (0-255) |
|
inlinestatic |
Set the Interrupt Group Mask
| groupMask | Group mask (0-0xFF) |
|
inlinestatic |
Set the Interrupt Priority Level
| intNum | specifies the interrupt in question. |
| priority | Priority level (0-255) |
|
inlinestatic |
Set the Interrupt Context ID
| intNum | specifies the interrupt in question. |
| contextID | Context ID to be set for the interrupt
|
|
inlinestatic |
Set the Interrupt Link Owner
| intNum | specifies the interrupt in question. |
| linkOwner | LinkOwner to be set for the interrupt (SSU_LINK0..15) |
|
inlinestatic |
Set the Access protection inheritance link
| intNum | specifies the interrupt in question. |
| apiLinkID | Access protection inheritance link for the interrupt (Use SSU_API_LINK1..15, or SSU_API_DISABLE to disable) |
|
inlinestatic |
Set the current Context ID
| contextID | can be one of the following :
|
|
inlinestatic |
Enable Supervisor ignore INTE control
| None |
|
inlinestatic |
Disable Supervisor ignore INTE control
| None |
|
inlinestatic |
RTINT Stack Warning
| level | Level for the RTISP to trigger the warning (0-15) |
| priority | priority level for which interrupts will be disabled |
Once RTISP >= level the RTINT assertions are only for interrupts higher in priority than the configured priority
|
inlinestatic |
Sets the INT Stack Pointer
| stack | is the INT stack. |
CPU will acknowledge the INT only when its current execution stack matched with INTSP
|
inlinestatic |
Lock the Boot link updates to config registers
|
inlinestatic |
Lock PIPE registers
| registers | Registers to be locked. Can be individual or OR of the following -
|
|
inlinestatic |
Unlock PIPE registers
| registers | Registers to be unlocked. Can be individual or OR of the following -
|
|
inlinestatic |
Commit PIPE registers
| registers | Registers to be committed. Can be individual or OR of the following -
|
|
extern |
Initializes the PIPE control registers by setting them to a known state.
This function initializes the PIPE control registers. After globally disabling interrupts and enabling the PIPE, it clears all of the PIPE interrupt enable bits and interrupt flags.
|
extern |
Initializes the PIPE vector table by setting all vectors to a default handler function.
|
extern |
Configures the interrupt channel
| intNum | specifies the interrupt in question. |
| config | Configuration parameters. Refer to the struct Interrupt_Config |
|
extern |
Configures the NMI
| handler | is a pointer to the function to be called. |
| linkOwner | is the linkOwner (INTERRUPT_LINKOWNER_0-15) |