Interrupts
SPDX-License-Identifier: Apache-2.0
Zephyr RTOS shall provide a mechanism to initialize a static IRQ service routine (ISR), providing all parameters needed to configure the hardware and software.
The static IRQ shall be initially disabled.
Zephyr RTOS shall provide a mechanism to initialize a direct IRQ handler, providing all parameters needed to configure the hardware and software.
As the developer of low-power and low-latency applications, I need to implement ISRs that avoid the normal interrupt and power management overhead.
The direct IRQ shall be initially disabled.
Zephyr RTOS shall provide a mechanism to initialize a dynamic IRQ service routine, providing all parameters needed to configure the hardware and software.
The dynamic IRQ shall be initially disabled.
Zephyr RTOS shall provide a mechanism to uninstall a dynamic ISR.
Zephyr RTOS shall provide a mechanism to Disable all IRQs on a CPU, and return the state the IRQ hardware prior to being disabled.
Zephyr RTOS shall provide a mechanism to Enable all IRQs on a CPU and return them to thier previous state.
Zephyr RTOS shall provide a mechanism to Disable a specified IRQ.
Zephyr RTOS shall provide a mechanism to Enable a specified IRQ.
Zephyr RTOS shall provide mechanisms that returns the Enabled status of a specified IRQ, where the status is Enabled or Disabled.
Zephyr RTOS shall provide mechanisms that returns the execution context, where the context is In-ISR or Not In-ISR.
As the developer of functions that may run in either ISR or THREAD context, I need to know the current context to enable condition behavior.
The Zephyr RTOS shall support multi-level preemptive interrupt priorities, when supported by hardware.