diff mbox

[edk2,2/7] ArmPkg: merge ArmGicV[23]Lib.h into ArmGicLib.h

Message ID 1432902820-18721-3-git-send-email-ard.biesheuvel@linaro.org
State New
Headers show

Commit Message

Ard Biesheuvel May 29, 2015, 12:33 p.m. UTC
Before splitting off ArmGicArchLib and moving it out of
ArmPkg/Drivers/ArmGic into ArmPkg/Library, make sure that the
GIC specific declarations it depends on are not hidden away in
local headers "GicV2/GicV2Lib.h" and "GicV3/GicV3Lib.h".

So merge them with <Library/ArmGicLib.h>. This is entirely
appropriate, since this is not a header that declares a public
interface into ArmGicLib, but defines implementation internals.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
---
 ArmPkg/Drivers/ArmGic/AArch64/ArmGicArchLib.c |  2 -
 ArmPkg/Drivers/ArmGic/Arm/ArmGicArchLib.c     |  2 -
 ArmPkg/Drivers/ArmGic/ArmGicLib.c             |  3 -
 ArmPkg/Drivers/ArmGic/ArmGicSecLib.c          |  2 -
 ArmPkg/Drivers/ArmGic/GicV2/ArmGicV2Dxe.c     |  3 +-
 ArmPkg/Drivers/ArmGic/GicV2/ArmGicV2Lib.h     | 54 -------
 ArmPkg/Drivers/ArmGic/GicV3/ArmGicV3Dxe.c     |  3 +-
 ArmPkg/Drivers/ArmGic/GicV3/ArmGicV3Lib.h     | 68 --------
 ArmPkg/Include/Library/ArmGicLib.h            | 94 ++++++++++++
 9 files changed, 98 insertions(+), 133 deletions(-)
diff mbox

Patch

diff --git a/ArmPkg/Drivers/ArmGic/AArch64/ArmGicArchLib.c b/ArmPkg/Drivers/ArmGic/AArch64/ArmGicArchLib.c
index 88fa4621e613..0e0fa3b9f33e 100644
--- a/ArmPkg/Drivers/ArmGic/AArch64/ArmGicArchLib.c
+++ b/ArmPkg/Drivers/ArmGic/AArch64/ArmGicArchLib.c
@@ -15,8 +15,6 @@ 
 #include <Library/ArmLib.h>
 #include <Library/ArmGicLib.h>
 
-#include "GicV3/ArmGicV3Lib.h"
-
 ARM_GIC_ARCH_REVISION
 EFIAPI
 ArmGicGetSupportedArchRevision (
diff --git a/ArmPkg/Drivers/ArmGic/Arm/ArmGicArchLib.c b/ArmPkg/Drivers/ArmGic/Arm/ArmGicArchLib.c
index 9ef56efeaa7b..f256de704631 100644
--- a/ArmPkg/Drivers/ArmGic/Arm/ArmGicArchLib.c
+++ b/ArmPkg/Drivers/ArmGic/Arm/ArmGicArchLib.c
@@ -15,8 +15,6 @@ 
 #include <Library/ArmLib.h>
 #include <Library/ArmGicLib.h>
 
-#include "GicV3/ArmGicV3Lib.h"
-
 ARM_GIC_ARCH_REVISION
 EFIAPI
 ArmGicGetSupportedArchRevision (
diff --git a/ArmPkg/Drivers/ArmGic/ArmGicLib.c b/ArmPkg/Drivers/ArmGic/ArmGicLib.c
index 48708e3812b4..248e896c4b94 100644
--- a/ArmPkg/Drivers/ArmGic/ArmGicLib.c
+++ b/ArmPkg/Drivers/ArmGic/ArmGicLib.c
@@ -19,9 +19,6 @@ 
 #include <Library/IoLib.h>
 #include <Library/PcdLib.h>
 
-#include "GicV2/ArmGicV2Lib.h"
-#include "GicV3/ArmGicV3Lib.h"
-
 /**
  * Return the base address of the GIC redistributor for the current CPU
  *
diff --git a/ArmPkg/Drivers/ArmGic/ArmGicSecLib.c b/ArmPkg/Drivers/ArmGic/ArmGicSecLib.c
index 1fdd4d73bd7d..d64806d2f16b 100644
--- a/ArmPkg/Drivers/ArmGic/ArmGicSecLib.c
+++ b/ArmPkg/Drivers/ArmGic/ArmGicSecLib.c
@@ -17,8 +17,6 @@ 
 #include <Library/IoLib.h>
 #include <Library/ArmGicLib.h>
 
-#include "GicV2/ArmGicV2Lib.h"
-
 /*
  * This function configures the interrupts set by the mask to be secure.
  *
diff --git a/ArmPkg/Drivers/ArmGic/GicV2/ArmGicV2Dxe.c b/ArmPkg/Drivers/ArmGic/GicV2/ArmGicV2Dxe.c
index 743c534e04d9..e649ac1bc6af 100644
--- a/ArmPkg/Drivers/ArmGic/GicV2/ArmGicV2Dxe.c
+++ b/ArmPkg/Drivers/ArmGic/GicV2/ArmGicV2Dxe.c
@@ -22,8 +22,9 @@  Abstract:
 
 --*/
 
+#include <Library/ArmGicLib.h>
+
 #include "ArmGicDxe.h"
-#include "GicV2/ArmGicV2Lib.h"
 
 #define ARM_GIC_DEFAULT_PRIORITY  0x80
 
diff --git a/ArmPkg/Drivers/ArmGic/GicV2/ArmGicV2Lib.h b/ArmPkg/Drivers/ArmGic/GicV2/ArmGicV2Lib.h
deleted file mode 100644
index 6803467346a3..000000000000
--- a/ArmPkg/Drivers/ArmGic/GicV2/ArmGicV2Lib.h
+++ /dev/null
@@ -1,54 +0,0 @@ 
-/** @file
-*
-*  Copyright (c) 2013-2014, ARM Limited. All rights reserved.
-*
-*  This program and the accompanying materials
-*  are licensed and made available under the terms and conditions of the BSD License
-*  which accompanies this distribution.  The full text of the license may be found at
-*  http://opensource.org/licenses/bsd-license.php
-*
-*  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-*  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-*
-**/
-
-#ifndef _ARM_GIC_V2_H_
-#define _ARM_GIC_V2_H_
-
-// Interrupts from 1020 to 1023 are considered as special interrupts (eg: spurious interrupts)
-#define ARM_GIC_IS_SPECIAL_INTERRUPTS(Interrupt) (((Interrupt) >= 1020) && ((Interrupt) <= 1023))
-
-VOID
-EFIAPI
-ArmGicV2SetupNonSecure (
-  IN  UINTN         MpId,
-  IN  INTN          GicDistributorBase,
-  IN  INTN          GicInterruptInterfaceBase
-  );
-
-VOID
-EFIAPI
-ArmGicV2EnableInterruptInterface (
-  IN  INTN          GicInterruptInterfaceBase
-  );
-
-VOID
-EFIAPI
-ArmGicV2DisableInterruptInterface (
-  IN  INTN          GicInterruptInterfaceBase
-  );
-
-UINTN
-EFIAPI
-ArmGicV2AcknowledgeInterrupt (
-  IN  UINTN          GicInterruptInterfaceBase
-  );
-
-VOID
-EFIAPI
-ArmGicV2EndOfInterrupt (
-  IN UINTN                  GicInterruptInterfaceBase,
-  IN UINTN                  Source
-  );
-
-#endif
diff --git a/ArmPkg/Drivers/ArmGic/GicV3/ArmGicV3Dxe.c b/ArmPkg/Drivers/ArmGic/GicV3/ArmGicV3Dxe.c
index 73cac8774056..4afa3d5a09c2 100644
--- a/ArmPkg/Drivers/ArmGic/GicV3/ArmGicV3Dxe.c
+++ b/ArmPkg/Drivers/ArmGic/GicV3/ArmGicV3Dxe.c
@@ -12,8 +12,9 @@ 
 *
 **/
 
+#include <Library/ArmGicLib.h>
+
 #include "ArmGicDxe.h"
-#include "GicV3/ArmGicV3Lib.h"
 
 #define ARM_GIC_DEFAULT_PRIORITY  0x80
 
diff --git a/ArmPkg/Drivers/ArmGic/GicV3/ArmGicV3Lib.h b/ArmPkg/Drivers/ArmGic/GicV3/ArmGicV3Lib.h
deleted file mode 100644
index 794e8788a60b..000000000000
--- a/ArmPkg/Drivers/ArmGic/GicV3/ArmGicV3Lib.h
+++ /dev/null
@@ -1,68 +0,0 @@ 
-/** @file
-*
-*  Copyright (c) 2014-2015, ARM Limited. All rights reserved.
-*
-*  This program and the accompanying materials are licensed and made available
-*  under the terms and conditions of the BSD License which accompanies this
-*  distribution. The full text of the license may be found at
-*  http://opensource.org/licenses/bsd-license.php
-*
-*  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
-*  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
-*
-**/
-
-#ifndef _ARM_GIC_V3_H_
-#define _ARM_GIC_V3_H_
-
-#define ICC_SRE_EL2_SRE         (1 << 0)
-
-#define ARM_GICD_IROUTER_IRM BIT31
-
-UINT32
-EFIAPI
-ArmGicV3GetControlSystemRegisterEnable (
-  VOID
-  );
-
-VOID
-EFIAPI
-ArmGicV3SetControlSystemRegisterEnable (
-  IN UINT32         ControlSystemRegisterEnable
-  );
-
-VOID
-EFIAPI
-ArmGicV3EnableInterruptInterface (
-  VOID
-  );
-
-VOID
-EFIAPI
-ArmGicV3DisableInterruptInterface (
-  VOID
-  );
-
-UINTN
-EFIAPI
-ArmGicV3AcknowledgeInterrupt (
-  VOID
-  );
-
-VOID
-EFIAPI
-ArmGicV3EndOfInterrupt (
-  IN UINTN                  Source
-  );
-
-VOID
-ArmGicV3SetBinaryPointer (
-  IN UINTN                  BinaryPoint
-  );
-
-VOID
-ArmGicV3SetPriorityMask (
-  IN UINTN                  Priority
-  );
-
-#endif
diff --git a/ArmPkg/Include/Library/ArmGicLib.h b/ArmPkg/Include/Library/ArmGicLib.h
index e2a4818c4c0c..e3db9c0d250f 100644
--- a/ArmPkg/Include/Library/ArmGicLib.h
+++ b/ArmPkg/Include/Library/ArmGicLib.h
@@ -231,4 +231,98 @@  ArmGicIsInterruptEnabled (
   IN UINTN                  Source
   );
 
+//
+// GIC revision 2 specific declarations
+//
+
+// Interrupts from 1020 to 1023 are considered as special interrupts (eg: spurious interrupts)
+#define ARM_GIC_IS_SPECIAL_INTERRUPTS(Interrupt) (((Interrupt) >= 1020) && ((Interrupt) <= 1023))
+
+VOID
+EFIAPI
+ArmGicV2SetupNonSecure (
+  IN  UINTN         MpId,
+  IN  INTN          GicDistributorBase,
+  IN  INTN          GicInterruptInterfaceBase
+  );
+
+VOID
+EFIAPI
+ArmGicV2EnableInterruptInterface (
+  IN  INTN          GicInterruptInterfaceBase
+  );
+
+VOID
+EFIAPI
+ArmGicV2DisableInterruptInterface (
+  IN  INTN          GicInterruptInterfaceBase
+  );
+
+UINTN
+EFIAPI
+ArmGicV2AcknowledgeInterrupt (
+  IN  UINTN          GicInterruptInterfaceBase
+  );
+
+VOID
+EFIAPI
+ArmGicV2EndOfInterrupt (
+  IN UINTN                  GicInterruptInterfaceBase,
+  IN UINTN                  Source
+  );
+
+//
+// GIC revision 3 specific declarations
+//
+
+#define ICC_SRE_EL2_SRE         (1 << 0)
+
+#define ARM_GICD_IROUTER_IRM BIT31
+
+UINT32
+EFIAPI
+ArmGicV3GetControlSystemRegisterEnable (
+  VOID
+  );
+
+VOID
+EFIAPI
+ArmGicV3SetControlSystemRegisterEnable (
+  IN UINT32         ControlSystemRegisterEnable
+  );
+
+VOID
+EFIAPI
+ArmGicV3EnableInterruptInterface (
+  VOID
+  );
+
+VOID
+EFIAPI
+ArmGicV3DisableInterruptInterface (
+  VOID
+  );
+
+UINTN
+EFIAPI
+ArmGicV3AcknowledgeInterrupt (
+  VOID
+  );
+
+VOID
+EFIAPI
+ArmGicV3EndOfInterrupt (
+  IN UINTN                  Source
+  );
+
+VOID
+ArmGicV3SetBinaryPointer (
+  IN UINTN                  BinaryPoint
+  );
+
+VOID
+ArmGicV3SetPriorityMask (
+  IN UINTN                  Priority
+  );
+
 #endif