summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@linaro.org>2016-09-05 11:25:18 +0100
committerArd Biesheuvel <ard.biesheuvel@linaro.org>2016-09-08 09:20:33 +0100
commitc52c592a0318ea31f14f09ebffa282dbc94f2e76 (patch)
tree3a39ef4c81ac92434239a0339e50ecdee4650cb4
parent2ede1ac0cc746d17251361176657b5c8a91e3b7e (diff)
downloadedk2-platforms-c52c592a0318ea31f14f09ebffa282dbc94f2e76.tar.xz
ArmPkg/ArmLib: introduce ArmBaseLib
Introduce a new ArmLib version ArmBaseLib, which encapsulates the ARM version ArmV7Lib and the AArch64 version AArch64Lib. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
-rw-r--r--ArmPkg/ArmPkg.dsc1
-rw-r--r--ArmPkg/Library/ArmLib/ArmBaseLib.inf59
2 files changed, 60 insertions, 0 deletions
diff --git a/ArmPkg/ArmPkg.dsc b/ArmPkg/ArmPkg.dsc
index e26ca035f5..012c5c835f 100644
--- a/ArmPkg/ArmPkg.dsc
+++ b/ArmPkg/ArmPkg.dsc
@@ -86,6 +86,7 @@
IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
+ ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf
[LibraryClasses.ARM]
diff --git a/ArmPkg/Library/ArmLib/ArmBaseLib.inf b/ArmPkg/Library/ArmLib/ArmBaseLib.inf
new file mode 100644
index 0000000000..3e9f19c3ca
--- /dev/null
+++ b/ArmPkg/Library/ArmLib/ArmBaseLib.inf
@@ -0,0 +1,59 @@
+#/** @file
+#
+# Copyright (c) 2008 - 2010, Apple Inc. All rights reserved.<BR>
+# Portions copyright (c) 2011 - 2014, ARM Limited. All rights reserved.
+# Copyright (c) 2016, Linaro Ltd. 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.
+#
+#
+#**/
+
+[Defines]
+ INF_VERSION = 0x00010005
+ BASE_NAME = ArmBaseLib
+ FILE_GUID = f1d943b6-99c5-46d5-af5a-66ec67662700
+ MODULE_TYPE = BASE
+ VERSION_STRING = 1.0
+ LIBRARY_CLASS = ArmLib
+
+[Sources]
+ Common/ArmLib.c
+
+[Sources.ARM]
+ ArmV7/ArmV7Lib.c
+ ArmV7/ArmV7ArchTimer.c
+
+ ArmV7/ArmLibSupportV7.S | GCC
+ ArmV7/ArmV7Support.S | GCC
+ ArmV7/ArmV7ArchTimerSupport.S | GCC
+ Common/Arm/ArmLibSupport.S | GCC
+
+ ArmV7/ArmLibSupportV7.asm | RVCT
+ ArmV7/ArmV7Support.asm | RVCT
+ ArmV7/ArmV7ArchTimerSupport.asm | RVCT
+ Common/Arm/ArmLibSupport.asm | RVCT
+
+[Sources.AARCH64]
+ AArch64/AArch64Lib.c
+ AArch64/AArch64ArchTimer.c
+
+ AArch64/ArmLibSupportV8.S
+ AArch64/AArch64Support.S
+ AArch64/AArch64ArchTimerSupport.S
+ Common/AArch64/ArmLibSupport.S
+
+[Packages]
+ ArmPkg/ArmPkg.dec
+ MdePkg/MdePkg.dec
+
+[Protocols]
+ gEfiCpuArchProtocolGuid
+
+[FeaturePcd.ARM]
+ gArmTokenSpaceGuid.PcdNormalMemoryNonshareableOverride