blob: 3a51b5ce1c1445aab4d1d3dbe995a08f6590fde8 [file] [log] [blame]
oliviermartin1e57a462013-01-25 11:28:06 +00001#/** @file
2# ARM processor package.
3#
4# Copyright (c) 2009 - 2010, Apple Inc. All rights reserved.<BR>
Olivier Martin olivier.martinbd1d0622014-08-20 18:01:50 +00005# Copyright (c) 2011 - 2014, ARM Ltd. All rights reserved.<BR>
oliviermartin1e57a462013-01-25 11:28:06 +00006#
7# This program and the accompanying materials
8# are licensed and made available under the terms and conditions of the BSD License
9# which accompanies this distribution. The full text of the license may be found at
10# http://opensource.org/licenses/bsd-license.php
11#
12# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
13# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
14#
15#**/
16
17################################################################################
18#
19# Defines Section - statements that will be processed to create a Makefile.
20#
21################################################################################
22[Defines]
23 PLATFORM_NAME = ArmPkg
24 PLATFORM_GUID = 5CFBD99E-3C43-4E7F-8054-9CDEAFF7710F
25 PLATFORM_VERSION = 0.1
26 DSC_SPECIFICATION = 0x00010005
27 OUTPUT_DIRECTORY = Build/Arm
Harry Liebel25402f52013-07-18 18:07:46 +000028 SUPPORTED_ARCHITECTURES = ARM|AARCH64
oliviermartin1e57a462013-01-25 11:28:06 +000029 BUILD_TARGETS = DEBUG|RELEASE
30 SKUID_IDENTIFIER = DEFAULT
31
32[BuildOptions]
33 XCODE:*_*_ARM_PLATFORM_FLAGS == -arch armv7
Ronald Cron3402aac2014-08-19 13:29:52 +000034 XCODE:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
35
oliviermartin1e57a462013-01-25 11:28:06 +000036 GCC:*_*_ARM_PLATFORM_FLAGS == -march=armv7-a -mfpu=neon
Ronald Cron3402aac2014-08-19 13:29:52 +000037 GCC:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
oliviermartin1e57a462013-01-25 11:28:06 +000038
39 RVCT:*_*_ARM_PLATFORM_FLAGS == --cpu Cortex-A8
Ronald Cron3402aac2014-08-19 13:29:52 +000040 RVCT:RELEASE_*_*_CC_FLAGS = -DMDEPKG_NDEBUG
oliviermartin1e57a462013-01-25 11:28:06 +000041
42[LibraryClasses.common]
43 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
44 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
45 CacheMaintenanceLib|ArmPkg/Library/ArmCacheMaintenanceLib/ArmCacheMaintenanceLib.inf
46 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
47 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
48 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
49 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
50 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
51 TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
52 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
53 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
54 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
55 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
56 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
Harry Liebelef0fa8e2014-07-29 14:13:21 +000057 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
oliviermartin1e57a462013-01-25 11:28:06 +000058 PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
59
60 SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf
61 UncachedMemoryAllocationLib|ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.inf
62 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
63 DefaultExceptionHandlerLib|ArmPkg/Library/DefaultExceptionHandlerLib/DefaultExceptionHandlerLib.inf
64
oliviermartin1e57a462013-01-25 11:28:06 +000065 CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
Olivier Martin017baa12013-10-29 06:36:34 +000066 ArmGicLib|ArmPkg/Drivers/ArmGic/ArmGicLib.inf
Ard Biesheuvel4f6d34b2014-09-09 16:10:18 +000067 ArmGenericTimerCounterLib|ArmPkg/Library/ArmGenericTimerPhyCounterLib/ArmGenericTimerPhyCounterLib.inf
oliviermartin166c01f2013-03-06 00:01:49 +000068 ArmSmcLib|ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf
oliviermartin1e57a462013-01-25 11:28:06 +000069 ArmDisassemblerLib|ArmPkg/Library/ArmDisassemblerLib/ArmDisassemblerLib.inf
70 DmaLib|ArmPkg/Library/ArmDmaLib/ArmDmaLib.inf
oliviermartin1e57a462013-01-25 11:28:06 +000071
72 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
73 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
oliviermartin1e57a462013-01-25 11:28:06 +000074 SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
75
76 BdsLib|ArmPkg/Library/BdsLib/BdsLib.inf
77 FdtLib|EmbeddedPkg/Library/FdtLib/FdtLib.inf
Ronald Cron3402aac2014-08-19 13:29:52 +000078
oliviermartin1e57a462013-01-25 11:28:06 +000079 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
80
Harry Liebel25402f52013-07-18 18:07:46 +000081[LibraryClasses.ARM]
82 ArmLib|ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.inf
83
84[LibraryClasses.AARCH64]
85 ArmLib|ArmPkg/Library/ArmLib/AArch64/AArch64Lib.inf
86
oliviermartin1e57a462013-01-25 11:28:06 +000087[LibraryClasses.common.PEIM]
88 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
89 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
90 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
91 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
92 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
93
94[LibraryClasses.common.DXE_DRIVER]
95 ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Dxe/DxeArmPlatformGlobalVariableLib.inf
96
Olivier Martin olivier.martinbd1d0622014-08-20 18:01:50 +000097[LibraryClasses.ARM, LibraryClasses.AARCH64]
oliviermartin1e57a462013-01-25 11:28:06 +000098 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
99
Olivier Martin olivier.martinbd1d0622014-08-20 18:01:50 +0000100 # Add support for GCC stack protector
101 NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
Harry Liebel25402f52013-07-18 18:07:46 +0000102
oliviermartin1e57a462013-01-25 11:28:06 +0000103[Components.common]
104 ArmPkg/Library/ArmCacheMaintenanceLib/ArmCacheMaintenanceLib.inf
105 ArmPkg/Library/ArmDisassemblerLib/ArmDisassemblerLib.inf
106 ArmPkg/Library/ArmDmaLib/ArmDmaLib.inf
oliviermartin1e57a462013-01-25 11:28:06 +0000107 ArmPkg/Library/ArmLib/Null/NullArmLib.inf
108 ArmPkg/Library/BaseMemoryLibStm/BaseMemoryLibStm.inf
oliviermartin1e57a462013-01-25 11:28:06 +0000109 ArmPkg/Library/BdsLib/BdsLib.inf
110 ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
oliviermartin3eef2842013-01-25 12:07:00 +0000111 ArmPkg/Library/DebugAgentSymbolsBaseLib/DebugAgentSymbolsBaseLib.inf
oliviermartin1e57a462013-01-25 11:28:06 +0000112 ArmPkg/Library/DebugPeCoffExtraActionLib/DebugPeCoffExtraActionLib.inf
113 ArmPkg/Library/DebugUncachedMemoryAllocationLib/DebugUncachedMemoryAllocationLib.inf
114 ArmPkg/Library/DefaultExceptionHandlerLib/DefaultExceptionHandlerLib.inf
115 ArmPkg/Library/RvdPeCoffExtraActionLib/RvdPeCoffExtraActionLib.inf
116 ArmPkg/Library/SemiHostingDebugLib/SemiHostingDebugLib.inf
117 ArmPkg/Library/SemiHostingSerialPortLib/SemiHostingSerialPortLib.inf
118 ArmPkg/Library/SemihostLib/SemihostLib.inf
119 ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.inf
120
oliviermartin1e57a462013-01-25 11:28:06 +0000121 ArmPkg/Drivers/CpuDxe/CpuDxe.inf
122 ArmPkg/Drivers/CpuPei/CpuPei.inf
Olivier Martin017baa12013-10-29 06:36:34 +0000123 ArmPkg/Drivers/ArmGic/ArmGicDxe.inf
124 ArmPkg/Drivers/ArmGic/ArmGicLib.inf
125 ArmPkg/Drivers/ArmGic/ArmGicSecLib.inf
oliviermartin1e57a462013-01-25 11:28:06 +0000126 ArmPkg/Drivers/TimerDxe/TimerDxe.inf
127
Ard Biesheuvelcece12d2014-09-09 16:06:10 +0000128 ArmPkg/Library/ArmGenericTimerPhyCounterLib/ArmGenericTimerPhyCounterLib.inf
Ard Biesheuvelbcf37cf2014-09-09 16:07:43 +0000129 ArmPkg/Library/ArmGenericTimerVirtCounterLib/ArmGenericTimerVirtCounterLib.inf
Ard Biesheuvelcece12d2014-09-09 16:06:10 +0000130
oliviermartin166c01f2013-03-06 00:01:49 +0000131 ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf
132 ArmPkg/Library/ArmSmcLibNull/ArmSmcLibNull.inf
133
oliviermartin1e57a462013-01-25 11:28:06 +0000134 ArmPkg/Filesystem/SemihostFs/SemihostFs.inf
135
oliviermartin1e57a462013-01-25 11:28:06 +0000136 ArmPkg/Application/LinuxLoader/LinuxFdtLoader.inf
Harry Liebel25402f52013-07-18 18:07:46 +0000137
138[Components.ARM]
139 ArmPkg/Library/BaseMemoryLibVstm/BaseMemoryLibVstm.inf
140
141 ArmPkg/Drivers/ArmCpuLib/ArmCortexA8Lib/ArmCortexA8Lib.inf
142 ArmPkg/Drivers/ArmCpuLib/ArmCortexA9Lib/ArmCortexA9Lib.inf
143 ArmPkg/Drivers/ArmCpuLib/ArmCortexA15Lib/ArmCortexA15Lib.inf
144
145# ArmPkg/Library/ArmLib/Arm11/Arm11ArmLib.inf
146# ArmPkg/Library/ArmLib/Arm11/Arm11ArmLibPrePi.inf
147# ArmPkg/Library/ArmLib/Arm9/Arm9ArmLib.inf
148# ArmPkg/Library/ArmLib/Arm9/Arm9ArmLibPrePi.inf
149 ArmPkg/Library/ArmLib/ArmV7/ArmV7LibSec.inf
150 ArmPkg/Library/ArmLib/ArmV7/ArmV7LibPrePi.inf
151
Harry Liebel634bdd92013-07-18 18:13:02 +0000152 ArmPkg/Application/LinuxLoader/LinuxAtagLoader.inf
153
Harry Liebel25402f52013-07-18 18:07:46 +0000154[Components.AARCH64]
155 ArmPkg/Drivers/ArmCpuLib/ArmCortexAEMv8Lib/ArmCortexAEMv8Lib.inf
156 ArmPkg/Drivers/ArmCpuLib/ArmCortexA5xLib/ArmCortexA5xLib.inf
157
158 ArmPkg/Library/ArmLib/AArch64/AArch64LibSec.inf
159 ArmPkg/Library/ArmLib/AArch64/AArch64LibPrePi.inf