At power-up, all interrupts return to
the default reset conditions:
- All interrupts are disabled.
- All interrupts are set to the
default priority (INT_CONFIG.PRI_LEVEL).
- All interrupts are set to the
default context (INT_CONFIG.CONTEXT_ID).
- All interrupts are assigned as INT by default
(RTINT_THRESHOLD.INT_RTINT_THRESHOLD).
- All interrupt vectors point to
the default NMI vector (INT_VECT_ADDR.*).
- Stack pointer warning levels are
reset to default values (RTINT_SP_H.*).
- All interrupt owner and API links
are set to a default link (INT_LINK_OWNER.*). The user needs to update the link
to SROOT_LINK (LINK2) to be able to configure the PIPE even when SSU is in Mode
1.
Interrupts are configured as
follows:
- Disable INT and RTINT:
Disable INT and RTINT using the GLOBAL_EN.ENABLE/KEY fields.
- Prioritization: Set the
interrupt priority as required.
- Nesting: Set the group as
required.
- Context: Set the context
ID as required.
- Stack protection: Set
stack pointer warning levels (RTINT_SP_H.*) as required.
- Enabling interrupts:
Enable required interrupts using INT_CTL_L_y.EN bit for each interrupt.
- Enabling INT and RTINT:
Enable INT and RTINT using the GLOBAL_EN.ENABLE/KEY bits.
Note: Enables/disables
must be done within an ATOMIC block for predictable CPU behavior
Interrupts can be re-configured while
GLOBAL_EN is enabled. However, interrupts that have already been forwarded from the
PIPE to the CPU and have reached the CPU, being serviced, or are nested-in are not
affected by any re-configuration changes. These settings do not apply until the next
interrupt is forwarded from the PIPE to the CPU.