ARM: irq: Do not clear pending IRQ when enabling them.
Do not clear pending IRQ when enabling an IRQ on ARM architectures. Peripherals and S/W ISRs may be required to be deferred until they are enabled later and the pended IRQ should be retained for the ISR to be vectored to when enabled. Change-id: I808183018d8a2cc58390a1de3b4797b2bb7c6ec9 Signed-off-by: Vinayak Chettimada <vinayak.kariappa.chettimada@nordicsemi.no>
This commit is contained in:
parent
a4b4f5ca20
commit
bbeb7030a4
1 changed files with 2 additions and 5 deletions
|
@ -39,16 +39,13 @@ extern void __reserved(void);
|
|||
*
|
||||
* @brief Enable an interrupt line
|
||||
*
|
||||
* Clear possible pending interrupts on the line, and enable the interrupt
|
||||
* line. After this call, the CPU will receive interrupts for the specified
|
||||
* <irq>.
|
||||
* Enable the interrupt. After this call, the CPU will receive interrupts for
|
||||
* the specified <irq>.
|
||||
*
|
||||
* @return N/A
|
||||
*/
|
||||
void _arch_irq_enable(unsigned int irq)
|
||||
{
|
||||
/* before enabling interrupts, ensure that interrupt is cleared */
|
||||
_NvicIrqUnpend(irq);
|
||||
_NvicIrqEnable(irq);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue