summaryrefslogtreecommitdiff
path: root/ArmPkg/Drivers/ArmGic/ArmGic.c
diff options
context:
space:
mode:
Diffstat (limited to 'ArmPkg/Drivers/ArmGic/ArmGic.c')
-rw-r--r--ArmPkg/Drivers/ArmGic/ArmGic.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/ArmPkg/Drivers/ArmGic/ArmGic.c b/ArmPkg/Drivers/ArmGic/ArmGic.c
index 8a10d113f7..25bd376027 100644
--- a/ArmPkg/Drivers/ArmGic/ArmGic.c
+++ b/ArmPkg/Drivers/ArmGic/ArmGic.c
@@ -55,7 +55,7 @@ ArmGicAcknowledgeInterrupt (
// Check if it is a valid interrupt ID
if ((Interrupt & 0x3FF) < ArmGicGetMaxNumInterrupts (GicDistributorBase)) {
// Got a valid SGI number hence signal End of Interrupt by writing to ICCEOIR
- MmioWrite32 (GicInterruptInterfaceBase + ARM_GIC_ICCEIOR, Interrupt);
+ ArmGicEndOfInterrupt (GicInterruptInterfaceBase, Interrupt);
if (CoreId) {
*CoreId = (Interrupt >> 10) & 0x7;
@@ -68,3 +68,13 @@ ArmGicAcknowledgeInterrupt (
return RETURN_INVALID_PARAMETER;
}
}
+
+VOID
+EFIAPI
+ArmGicEndOfInterrupt (
+ IN UINTN GicInterruptInterfaceBase,
+ IN UINTN Source
+ )
+{
+ MmioWrite32 (GicInterruptInterfaceBase + ARM_GIC_ICCEIOR, Source);
+}