1#/** @file
2# ARM processor package.
3#
4# Copyright (c) 2009 - 2010, Apple Inc. All rights reserved.<BR>
5# Copyright (c) 2011 - 2018, ARM Ltd. All rights reserved.<BR>
6# Copyright (c) 2016, Linaro Ltd. All rights reserved.<BR>
7#
8#    SPDX-License-Identifier: BSD-2-Clause-Patent
9#
10#**/
11
12################################################################################
13#
14# Defines Section - statements that will be processed to create a Makefile.
15#
16################################################################################
17[Defines]
18  PLATFORM_NAME                  = ArmPkg
19  PLATFORM_GUID                  = 5CFBD99E-3C43-4E7F-8054-9CDEAFF7710F
20  PLATFORM_VERSION               = 0.1
21  DSC_SPECIFICATION              = 0x00010005
22  OUTPUT_DIRECTORY               = Build/Arm
23  SUPPORTED_ARCHITECTURES        = ARM|AARCH64
24  BUILD_TARGETS                  = DEBUG|RELEASE|NOOPT
25  SKUID_IDENTIFIER               = DEFAULT
26
27[BuildOptions]
28  RELEASE_*_*_CC_FLAGS  = -DMDEPKG_NDEBUG
29  *_*_*_CC_FLAGS  = -DDISABLE_NEW_DEPRECATED_INTERFACES
30
31[LibraryClasses.common]
32  BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
33  BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
34  CacheMaintenanceLib|ArmPkg/Library/ArmCacheMaintenanceLib/ArmCacheMaintenanceLib.inf
35  CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
36  DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
37  HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
38  MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
39  PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
40  PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
41  TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTemplate.inf
42  UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
43  UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
44  UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
45  DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
46  UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
47  PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
48  PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePeCoffGetEntryPointLib.inf
49
50  UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
51  HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
52
53  SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf
54  DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
55  DefaultExceptionHandlerLib|ArmPkg/Library/DefaultExceptionHandlerLib/DefaultExceptionHandlerLib.inf
56  CpuExceptionHandlerLib|ArmPkg/Library/ArmExceptionLib/ArmExceptionLib.inf
57
58  CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
59  ArmGicLib|ArmPkg/Drivers/ArmGic/ArmGicLib.inf
60  ArmGicArchLib|ArmPkg/Library/ArmGicArchLib/ArmGicArchLib.inf
61  ArmGenericTimerCounterLib|ArmPkg/Library/ArmGenericTimerPhyCounterLib/ArmGenericTimerPhyCounterLib.inf
62  ArmSmcLib|ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf
63  ArmDisassemblerLib|ArmPkg/Library/ArmDisassemblerLib/ArmDisassemblerLib.inf
64  OpteeLib|ArmPkg/Library/OpteeLib/OpteeLib.inf
65
66  UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
67  PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
68  SerialPortLib|MdePkg/Library/BaseSerialPortLibNull/BaseSerialPortLibNull.inf
69
70  FdtLib|EmbeddedPkg/Library/FdtLib/FdtLib.inf
71
72  ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
73  FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
74  SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
75
76  IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
77
78  ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
79  ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf
80
81  ArmMtlLib|ArmPkg/Library/ArmMtlNullLib/ArmMtlNullLib.inf
82
83[LibraryClasses.common.PEIM]
84  HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
85  PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
86  MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
87  PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
88  PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
89
90[LibraryClasses.ARM, LibraryClasses.AARCH64]
91  NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
92
93  # Add support for GCC stack protector
94  NULL|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
95
96[Components.common]
97  ArmPkg/Library/ArmCacheMaintenanceLib/ArmCacheMaintenanceLib.inf
98  ArmPkg/Library/ArmDisassemblerLib/ArmDisassemblerLib.inf
99  ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
100  ArmPkg/Library/DebugAgentSymbolsBaseLib/DebugAgentSymbolsBaseLib.inf
101  ArmPkg/Library/DebugPeCoffExtraActionLib/DebugPeCoffExtraActionLib.inf
102  ArmPkg/Library/DefaultExceptionHandlerLib/DefaultExceptionHandlerLib.inf
103  ArmPkg/Library/RvdPeCoffExtraActionLib/RvdPeCoffExtraActionLib.inf
104  ArmPkg/Library/SemiHostingDebugLib/SemiHostingDebugLib.inf
105  ArmPkg/Library/SemiHostingSerialPortLib/SemiHostingSerialPortLib.inf
106  ArmPkg/Library/SemihostLib/SemihostLib.inf
107  ArmPkg/Library/ArmPsciResetSystemLib/ArmPsciResetSystemLib.inf
108  ArmPkg/Library/ArmExceptionLib/ArmExceptionLib.inf
109  ArmPkg/Library/ArmExceptionLib/ArmRelocateExceptionLib.inf
110
111  ArmPkg/Drivers/CpuDxe/CpuDxe.inf
112  ArmPkg/Drivers/CpuPei/CpuPei.inf
113  ArmPkg/Drivers/ArmGic/ArmGicDxe.inf
114  ArmPkg/Drivers/ArmGic/ArmGicLib.inf
115  ArmPkg/Drivers/GenericWatchdogDxe/GenericWatchdogDxe.inf
116  ArmPkg/Drivers/TimerDxe/TimerDxe.inf
117
118  ArmPkg/Library/ArmGenericTimerPhyCounterLib/ArmGenericTimerPhyCounterLib.inf
119  ArmPkg/Library/ArmGenericTimerVirtCounterLib/ArmGenericTimerVirtCounterLib.inf
120
121  ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf
122  ArmPkg/Library/ArmSmcLibNull/ArmSmcLibNull.inf
123  ArmPkg/Library/ArmHvcLib/ArmHvcLib.inf
124  ArmPkg/Library/ArmSvcLib/ArmSvcLib.inf
125  ArmPkg/Library/OpteeLib/OpteeLib.inf
126
127  ArmPkg/Filesystem/SemihostFs/SemihostFs.inf
128
129  ArmPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf
130
131  ArmPkg/Drivers/ArmPciCpuIo2Dxe/ArmPciCpuIo2Dxe.inf
132  ArmPkg/Library/ArmArchTimerLib/ArmArchTimerLib.inf
133  ArmPkg/Library/ArmGicArchLib/ArmGicArchLib.inf
134  ArmPkg/Library/ArmGicArchSecLib/ArmGicArchSecLib.inf
135  ArmPkg/Library/ArmLib/ArmBaseLib.inf
136  ArmPkg/Library/ArmSoftFloatLib/ArmSoftFloatLib.inf
137  ArmPkg/Library/PeiServicesTablePointerLib/PeiServicesTablePointerLib.inf
138  ArmPkg/Library/PlatformBootManagerLib/PlatformBootManagerLib.inf
139
140  ArmPkg/Drivers/ArmScmiDxe/ArmScmiDxe.inf
141
142[Components.AARCH64]
143  ArmPkg/Library/ArmMmuLib/ArmMmuPeiLib.inf
144  ArmPkg/Library/StandaloneMmMmuLib/ArmMmuStandaloneMmLib.inf
145