summaryrefslogtreecommitdiff
path: root/ArmPkg/Include/Library/ArmGicLib.h
diff options
context:
space:
mode:
Diffstat (limited to 'ArmPkg/Include/Library/ArmGicLib.h')
-rw-r--r--ArmPkg/Include/Library/ArmGicLib.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/ArmPkg/Include/Library/ArmGicLib.h b/ArmPkg/Include/Library/ArmGicLib.h
index f2d4c7b27c..e3ef228dba 100644
--- a/ArmPkg/Include/Library/ArmGicLib.h
+++ b/ArmPkg/Include/Library/ArmGicLib.h
@@ -140,10 +140,24 @@ ArmGicSendSgiTo (
IN INTN SgiId
);
+/*
+ * Acknowledge and return the value of the Interrupt Acknowledge Register
+ *
+ * InterruptId is returned separately from the register value because in
+ * the GICv2 the register value contains the CpuId and InterruptId while
+ * in the GICv3 the register value is only the InterruptId.
+ *
+ * @param GicInterruptInterfaceBase Base Address of the GIC CPU Interface
+ * @param InterruptId InterruptId read from the Interrupt Acknowledge Register
+ *
+ * @retval value returned by the Interrupt Acknowledge Register
+ *
+ */
UINTN
EFIAPI
ArmGicAcknowledgeInterrupt (
- IN UINTN GicInterruptInterfaceBase
+ IN UINTN GicInterruptInterfaceBase,
+ OUT UINTN *InterruptId
);
VOID