diff options
author | oliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524> | 2012-03-26 10:54:49 +0000 |
---|---|---|
committer | oliviermartin <oliviermartin@6f19259b-4bc3-4df7-8a09-765794883524> | 2012-03-26 10:54:49 +0000 |
commit | 645890ba40ea2980fc85a8b6f013286c4f668075 (patch) | |
tree | 9a7f381c1bf1b56b81ea7249bf77a3e9bad68fb1 | |
parent | 1dc483b30ed3b67e6051f6d7592fce9b96d8bec6 (diff) | |
download | edk2-platforms-645890ba40ea2980fc85a8b6f013286c4f668075.tar.xz |
ArmPkg/Drivers/PL390Gic: Removed acknowledge of special interrupts (spurious interrupt)
Cleaning a special interrupt has an unpredictable behaviour.
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13129 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r-- | ArmPkg/Drivers/PL390Gic/PL390GicDxe.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/ArmPkg/Drivers/PL390Gic/PL390GicDxe.c b/ArmPkg/Drivers/PL390Gic/PL390GicDxe.c index 3292988502..f382431e90 100644 --- a/ArmPkg/Drivers/PL390Gic/PL390GicDxe.c +++ b/ArmPkg/Drivers/PL390Gic/PL390GicDxe.c @@ -259,9 +259,10 @@ IrqInterruptHandler ( HARDWARE_INTERRUPT_HANDLER InterruptHandler; GicInterrupt = MmioRead32 (PcdGet32(PcdGicInterruptInterfaceBase) + ARM_GIC_ICCIAR); - //TODO: Comment me + + // Special Interrupts (ID1020-ID1023) have an Interrupt ID greater than the number of interrupt (ie: Spurious interrupt). if (GicInterrupt >= PcdGet32(PcdGicNumInterrupts)) { - MmioWrite32 (PcdGet32(PcdGicInterruptInterfaceBase) + ARM_GIC_ICCEIOR, GicInterrupt); + // The special interrupt do not need to be acknowledge return; } |