• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#
2#  Copyright (c) 2011-2012, ARM Limited. All rights reserved.
3#  Copyright (c) 2015, Hisilicon Limited. All rights reserved.
4#  Copyright (c) 2015, Linaro Limited. All rights reserved.
5#
6#  This program and the accompanying materials
7#  are licensed and made available under the terms and conditions of the BSD License
8#  which accompanies this distribution.  The full text of the license may be found at
9#  http://opensource.org/licenses/bsd-license.php
10#
11#  THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12#  WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13#
14#
15
16################################################################################
17#
18# Defines Section - statements that will be processed to create a Makefile.
19#
20################################################################################
21[Defines]
22  PLATFORM_NAME                  = Pv660D02
23  PLATFORM_GUID                  = E1AB8AC3-3EF1-4c6f-8D9F-ABE3EC67188E
24  PLATFORM_VERSION               = 0.1
25  DSC_SPECIFICATION              = 0x00010005
26  OUTPUT_DIRECTORY               = Build/$(PLATFORM_NAME)
27  SUPPORTED_ARCHITECTURES        = AARCH64
28  BUILD_TARGETS                  = DEBUG|RELEASE
29  SKUID_IDENTIFIER               = DEFAULT
30  FLASH_DEFINITION               = OpenPlatformPkg/Platforms/Hisilicon/D02/$(PLATFORM_NAME).fdf
31  DEFINE INCLUDE_TFTP_COMMAND=1
32
33!include OpenPlatformPkg/Chips/Hisilicon/Hisilicon.dsc.inc
34
35[LibraryClasses.common]
36  ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
37  ArmPlatformLib|OpenPlatformPkg/Chips/Hisilicon/Library/ArmPlatformLibHisilicon/ArmPlatformLib.inf
38
39  ArmPlatformSysConfigLib|ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressSysConfigLib/ArmVExpressSysConfigLib.inf
40  NorFlashPlatformLib|ArmPlatformPkg/ArmVExpressPkg/Library/NorFlashArmVExpressLib/NorFlashArmVExpressLib.inf
41  LcdPlatformLib|ArmPlatformPkg/ArmVExpressPkg/Library/PL111LcdArmVExpressLib/PL111LcdArmVExpressLib.inf
42  I2CLib|OpenPlatformPkg/Chips/Hisilicon/Library/I2CLib/I2CLib.inf
43  TimerLib|ArmPkg/Library/ArmArchTimerLib/ArmArchTimerLib.inf
44
45  IpmiCmdLib|OpenPlatformPkg/Chips/Hisilicon/Binary/Hi1610/Library/IpmiCmdLib/IpmiCmdLib.inf
46
47  NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
48  DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf
49  HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
50  UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
51  UefiScsiLib|MdePkg/Library/UefiScsiLib/UefiScsiLib.inf
52  UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf
53  IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf
54
55!ifdef $(FDT_ENABLE)
56  #FDTUpdateLib
57  FdtUpdateLib|OpenPlatformPkg/Platforms/Hisilicon/D02/FdtUpdateLibD02/FdtUpdateLib.inf
58!endif #$(FDT_ENABLE)
59
60  CpldIoLib|OpenPlatformPkg/Chips/Hisilicon/Library/CpldIoLib/CpldIoLib.inf
61
62  SerdesLib|OpenPlatformPkg/Chips/Hisilicon/Binary/Pv660/Library/Pv660Serdes/Pv660SerdesLib.inf
63
64  EfiTimeBaseLib|OpenPlatformPkg/Library/EfiTimeBaseLib/EfiTimeBaseLib.inf
65  RealTimeClockLib|OpenPlatformPkg/Chips/Hisilicon/Library/DS3231RealTimeClockLib/DS3231RealTimeClockLib.inf
66  OemMiscLib|OpenPlatformPkg/Platforms/Hisilicon/D02/Library/OemMiscLibD02/OemMiscLibD02.inf
67  OemAddressMapLib|OpenPlatformPkg/Platforms/Hisilicon/Binary/D02/Library/AddressMapPv660D02/OemAddressMapPv660D02.inf
68  PlatformSysCtrlLib|OpenPlatformPkg/Chips/Hisilicon/Binary/Pv660/Library/PlatformSysCtrlLibPv660/PlatformSysCtrlLibPv660.inf
69
70  CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
71  GenericBdsLib|IntelFrameworkModulePkg/Library/GenericBdsLib/GenericBdsLib.inf
72  PlatformBdsLib|OpenPlatformPkg/Chips/Hisilicon/Library/PlatformIntelBdsLib/PlatformIntelBdsLib.inf
73  CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/CustomizedDisplayLib.inf
74
75## GIC on D02/D03 is not fully ARM GIC compatible: IRQ cannot be cancelled when
76## input signal is de-asserted, except for virtual timer interrupt IRQ #27.
77## So we choose to use virtual timer instead of physical one as a workaround.
78## This library instance is to override the original define in LibraryClasses.AARCH64 in Hisilicon.dsc.inc.
79[LibraryClasses.AARCH64]
80  ArmGenericTimerCounterLib|ArmPkg/Library/ArmGenericTimerVirtCounterLib/ArmGenericTimerVirtCounterLib.inf
81
82[LibraryClasses.common.SEC]
83  ArmPlatformLib|OpenPlatformPkg/Chips/Hisilicon/Library/ArmPlatformLibHisilicon/ArmPlatformLibSec.inf
84
85[LibraryClasses.common.DXE_RUNTIME_DRIVER]
86  I2CLib|OpenPlatformPkg/Chips/Hisilicon/Library/I2CLib/I2CLibRuntime.inf
87
88[BuildOptions]
89  GCC:*_*_AARCH64_PLATFORM_FLAGS == -I$(WORKSPACE)/OpenPlatformPkg/Chips/Hisilicon/Pv660/Include
90
91
92################################################################################
93#
94# Pcd Section - list of all EDK II PCD Entries defined by this Platform
95#
96################################################################################
97
98[PcdsFeatureFlag.common]
99
100  ## If TRUE, Graphics Output Protocol will be installed on virtual handle created by ConsplitterDxe.
101  #  It could be set FALSE to save size.
102  gEfiMdeModulePkgTokenSpaceGuid.PcdConOutGopSupport|FALSE
103
104[PcdsFixedAtBuild.common]
105  gEmbeddedTokenSpaceGuid.PcdEmbeddedPrompt|"D02"
106
107  gArmPlatformTokenSpaceGuid.PcdCoreCount|8
108
109  gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000
110
111  # Stacks for MPCores in Secure World
112  gArmPlatformTokenSpaceGuid.PcdCPUCoresSecStackBase|0xE1000000
113  gArmPlatformTokenSpaceGuid.PcdCPUCoreSecPrimaryStackSize|0x10000
114
115  # Stacks for MPCores in Monitor Mode
116  gArmPlatformTokenSpaceGuid.PcdCPUCoresSecMonStackBase|0xE100FF00
117  gArmPlatformTokenSpaceGuid.PcdCPUCoreSecMonStackSize|0x100
118
119  # Stacks for MPCores in Normal World
120  gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0xE1000000
121  gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0xFF00
122
123  gArmTokenSpaceGuid.PcdSystemMemoryBase|0x00000000
124  gArmTokenSpaceGuid.PcdSystemMemorySize|0x3FC00000
125
126  # Size of the region used by UEFI in permanent memory (Reserved 64MB)
127  gArmPlatformTokenSpaceGuid.PcdSystemMemoryUefiRegionSize|0x10000000
128
129  #
130  # ARM Pcds
131  #
132  gArmTokenSpaceGuid.PcdArmUncachedMemoryMask|0x0000000040000000
133
134  #
135  # ARM PrimeCell
136  #
137
138
139  ## SP805 Watchdog - Motherboard Watchdog
140  gArmPlatformTokenSpaceGuid.PcdSP805WatchdogBase|0x801e0000
141
142  ## Serial Terminal
143  gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x80300000
144  gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|115200
145
146  gHisiTokenSpaceGuid.PcdUartClkInHz|200000000
147
148  gHisiTokenSpaceGuid.PcdSerialPortSendDelay|10000000
149
150  gEfiMdePkgTokenSpaceGuid.PcdUartDefaultDataBits|8
151  gEfiMdePkgTokenSpaceGuid.PcdUartDefaultParity|1
152  gEfiMdePkgTokenSpaceGuid.PcdUartDefaultStopBits|1
153
154  gHisiTokenSpaceGuid.PcdM3SmmuBaseAddress|0xa0040000
155  gHisiTokenSpaceGuid.PcdPcieSmmuBaseAddress|0xb0040000
156  gHisiTokenSpaceGuid.PcdDsaSmmuBaseAddress|0xc0040000
157  gHisiTokenSpaceGuid.PcdAlgSmmuBaseAddress|0xd0040000
158  gEfiMdeModulePkgTokenSpaceGuid.PcdFirmwareVersionString|L"Hisilicon D02 UEFI 16.08 RC1"
159
160  gHisiTokenSpaceGuid.PcdSystemProductName|L"D02"
161  gHisiTokenSpaceGuid.PcdSystemVersion|L"Estuary"
162  gHisiTokenSpaceGuid.PcdBaseBoardProductName|L"D02"
163  gHisiTokenSpaceGuid.PcdBaseBoardVersion|L"Estuary"
164
165  gHisiTokenSpaceGuid.PcdSlotPerChannelNum|0x2
166
167  #
168  # ARM PL390 General Interrupt Controller
169  #
170  gArmTokenSpaceGuid.PcdGicDistributorBase|0x8D000000
171  gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase|0xFE000000
172  gArmTokenSpaceGuid.PcdGicRedistributorsBase|0x8D100000
173
174  ## DTB address at spi flash
175  gHisiTokenSpaceGuid.FdtFileAddress|0xA4B00000
176
177  gHisiTokenSpaceGuid.PcdNORFlashBase|0x90000000
178  gHisiTokenSpaceGuid.PcdNORFlashCachableSize|0x8000000
179
180  #
181  # ARM OS Loader
182  #
183  # Versatile Express machine type (ARM VERSATILE EXPRESS = 2272) required for ARM Linux:
184  gArmPlatformTokenSpaceGuid.PcdDefaultBootDescription|L"Linux from SATA"
185  gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"EFI\GRUB2\grubaa64.efi"
186  gArmPlatformTokenSpaceGuid.PcdDefaultBootArgument|""
187
188  # Use the serial console (ConIn & ConOut) and the Graphic driver (ConOut)
189  gArmPlatformTokenSpaceGuid.PcdDefaultConOutPaths|L"VenHw(D3987D4B-971A-435F-8CAF-4967EB627241)/Uart(115200,8,N,1)/VenPcAnsi();VenHw(407B4008-BF5B-11DF-9547-CF16E0D72085)"
190  gArmPlatformTokenSpaceGuid.PcdDefaultConInPaths|L"VenHw(D3987D4B-971A-435F-8CAF-4967EB627241)/Uart(115200,8,N,1)/VenPcAnsi()"
191
192  #
193  # ARM Architectual Timer Frequency
194  #
195  gArmTokenSpaceGuid.PcdArmArchTimerFreqInHz|50000000
196
197  gHisiTokenSpaceGuid.PcdSysControlBaseAddress|0x80010000
198  gHisiTokenSpaceGuid.PcdMailBoxAddress|0x0000FFF8
199  gHisiTokenSpaceGuid.PcdCpldBaseAddress|0x98000000
200  gHisiTokenSpaceGuid.PcdSFCCFGBaseAddress|0xA6000000
201  gHisiTokenSpaceGuid.PcdSFCMEM0BaseAddress|0xA4000000
202
203  gOpenPlatformTokenSpaceGuid.PcdRamDiskMaxSize|128
204
205  gHisiTokenSpaceGuid.PcdPeriSubctrlAddress|0x80000000
206
207  gHisiTokenSpaceGuid.PcdMdioSubctrlAddress|0x80000000
208
209  ## 1 SCCL + 1 SICL
210  gHisiTokenSpaceGuid.PcdPlatformDefaultPackageType|0x0
211  gHisiTokenSpaceGuid.PcdArmPrimaryCoreTemp|0x80020000
212  gHisiTokenSpaceGuid.PcdTopOfLowMemory|0x80000000
213  gHisiTokenSpaceGuid.PcdBottomOfHighMemory|0x1000000000
214  gHisiTokenSpaceGuid.PcdTrustedFirmwareEnable|0x1
215
216  gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|FALSE
217  gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0x83, 0xA5, 0x04, 0x7C, 0x3E, 0x9E, 0x1C, 0x4F, 0xAD, 0x65, 0xE0, 0x52, 0x68, 0xD0, 0xB4, 0xD1 }
218
219  ## SP804 DualTimer
220  gArmPlatformTokenSpaceGuid.PcdSP804TimerFrequencyInMHz|200
221  gArmPlatformTokenSpaceGuid.PcdSP804TimerPeriodicInterruptNum|304
222  gArmPlatformTokenSpaceGuid.PcdSP804TimerPeriodicBase|0x80060000
223  ## TODO: need to confirm the base for Performance and Metronome base for PV660
224  gArmPlatformTokenSpaceGuid.PcdSP804TimerPerformanceBase|0x80060000
225  gArmPlatformTokenSpaceGuid.PcdSP804TimerMetronomeBase|0x80060000
226
227  gHisiTokenSpaceGuid.PcdPcieRootBridgeMask|0x6 # bit0:HB0RB0,bit1:HB0RB1,bit2:HB0RB2,bit3:HB0RB3,bit4:HB1RB0,bit5:HB1RB1,bit6:HB1RB2,bit7:HB1RB3
228  gHisiTokenSpaceGuid.PcdHb1BaseAddress|0x400000000000 # 4T
229
230  gHisiTokenSpaceGuid.PcdHb0Rb0PciConfigurationSpaceBaseAddress|0x30000000000
231  gHisiTokenSpaceGuid.PcdHb0Rb0PciConfigurationSpaceSize|0x10000000000
232
233  gHisiTokenSpaceGuid.PcdHb0Rb1PciConfigurationSpaceBaseAddress|0x22000000000
234  gHisiTokenSpaceGuid.PcdHb0Rb1PciConfigurationSpaceSize|0x10000000
235
236  gHisiTokenSpaceGuid.PcdHb0Rb2PciConfigurationSpaceBaseAddress|0x24000000000
237  gHisiTokenSpaceGuid.PcdHb0Rb2PciConfigurationSpaceSize|0x10000000
238
239  gHisiTokenSpaceGuid.PcdHb0Rb3PciConfigurationSpaceBaseAddress|0x26000000000
240  gHisiTokenSpaceGuid.PcdHb0Rb3PciConfigurationSpaceSize|0x10000000
241
242  gHisiTokenSpaceGuid.PciHb0Rb0Base|0xb0070000
243  gHisiTokenSpaceGuid.PciHb0Rb1Base|0xb0080000
244  gHisiTokenSpaceGuid.PciHb0Rb2Base|0xb0090000
245  gHisiTokenSpaceGuid.PciHb0Rb3Base|0xb00a0000
246
247  gHisiTokenSpaceGuid.PcdHb0Rb1PciRegionBaseAddress|0xb0000000
248  gHisiTokenSpaceGuid.PcdHb0Rb1PciRegionSize|0x7feffff
249
250  gHisiTokenSpaceGuid.PcdHb0Rb2PciRegionBaseAddress|0xc0000000
251  gHisiTokenSpaceGuid.PcdHb0Rb2PciRegionSize|0x3feffff
252
253  gHisiTokenSpaceGuid.PcdHb0Rb1CpuMemRegionBase|0x22008000000
254  gHisiTokenSpaceGuid.PcdHb0Rb2CpuMemRegionBase|0x2400c000000
255
256  gHisiTokenSpaceGuid.PcdHb0Rb1CpuIoRegionBase|0x2200fff0000
257  gHisiTokenSpaceGuid.PcdHb0Rb2CpuIoRegionBase|0x2400fff0000
258
259  gHisiTokenSpaceGuid.PcdHb0Rb1IoBase|0
260  gHisiTokenSpaceGuid.PcdHb0Rb1IoSize|0xffff #64K
261
262  gHisiTokenSpaceGuid.PcdHb0Rb2IoBase|0
263  gHisiTokenSpaceGuid.PcdHb0Rb2IoSize|0xffff #64K
264
265################################################################################
266#
267# Components Section - list of all EDK II Modules needed by this Platform
268#
269################################################################################
270[Components.common]
271  #
272  # PEI Phase modules
273  #
274  ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf
275  MdeModulePkg/Core/Pei/PeiMain.inf
276  MdeModulePkg/Universal/PCD/Pei/Pcd.inf {
277    <LibraryClasses>
278      PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
279  }
280  ArmPlatformPkg/PlatformPei/PlatformPeim.inf
281  OpenPlatformPkg/Platforms/Hisilicon/Binary/D02/MemoryInitPei/MemoryInitPeim.inf
282  ArmPkg/Drivers/CpuPei/CpuPei.inf
283  IntelFrameworkModulePkg/Universal/StatusCode/Pei/StatusCodePei.inf
284  MdeModulePkg/Universal/FaultTolerantWritePei/FaultTolerantWritePei.inf
285  MdeModulePkg/Universal/Variable/Pei/VariablePei.inf
286  OpenPlatformPkg/Platforms/Hisilicon/D02/EarlyConfigPeim/EarlyConfigPeim.inf
287  OpenPlatformPkg/Chips/Hisilicon/Drivers/VersionInfoPeim/VersionInfoPeim.inf
288
289  MdeModulePkg/Core/DxeIplPeim/DxeIpl.inf {
290    <LibraryClasses>
291      NULL|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf
292  }
293
294  #
295  # DXE
296  #
297  MdeModulePkg/Core/Dxe/DxeMain.inf {
298    <LibraryClasses>
299      NULL|MdeModulePkg/Library/DxeCrc32GuidedSectionExtractLib/DxeCrc32GuidedSectionExtractLib.inf
300  }
301  MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {
302    <LibraryClasses>
303      PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
304  }
305
306  OpenPlatformPkg/Chips/Hisilicon/Pv660/Drivers/IoInitDxe/IoInitDxe.inf
307
308  #
309  # Architectural Protocols
310  #
311  ArmPkg/Drivers/CpuDxe/CpuDxe.inf
312  MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
313
314  OpenPlatformPkg/Chips/Hisilicon/Drivers/NorFlashDxe/NorFlashDxe.inf
315
316
317  OpenPlatformPkg/Platforms/Hisilicon/D02/OemNicConfigD02/OemNicConfigD02.inf
318
319  OpenPlatformPkg/Platforms/Hisilicon/Binary/D02/Drivers/SFC/SfcDxeDriver.inf
320
321  MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
322  MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf
323  OpenPlatformPkg/Chips/Hisilicon/Drivers/FlashFvbDxe/FlashFvbDxe.inf
324  MdeModulePkg/Universal/Variable/RuntimeDxe/VariableRuntimeDxe.inf {
325    <LibraryClasses>
326      NULL|MdeModulePkg/Library/VarCheckUefiLib/VarCheckUefiLib.inf
327      BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
328  }
329  MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
330  MdeModulePkg/Universal/FaultTolerantWriteDxe/FaultTolerantWriteDxe.inf
331  EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf
332
333  MdeModulePkg/Universal/MonotonicCounterRuntimeDxe/MonotonicCounterRuntimeDxe.inf
334  EmbeddedPkg/ResetRuntimeDxe/ResetRuntimeDxe.inf
335  EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf
336  EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf
337
338  MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
339  MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
340  MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.inf
341  MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
342  MdeModulePkg/Universal/SerialDxe/SerialDxe.inf
343
344  # Simple TextIn/TextOut for UEFI Terminal
345  EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf
346
347  MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
348
349  ArmPkg/Drivers/ArmGic/ArmGicDxe.inf
350
351  ArmPkg/Drivers/TimerDxe/TimerDxe.inf
352  ArmPlatformPkg/Drivers/SP805WatchdogDxe/SP805WatchdogDxe.inf
353
354  IntelFrameworkModulePkg/Universal/StatusCode/RuntimeDxe/StatusCodeRuntimeDxe.inf
355  #
356  #ACPI
357  #
358  MdeModulePkg/Universal/Acpi/AcpiPlatformDxe/AcpiPlatformDxe.inf
359  MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
360
361  OpenPlatformPkg/Chips/Hisilicon/Pv660/Pv660AcpiTables/AcpiTables.inf
362  OpenPlatformPkg/Chips/Hisilicon/Drivers/AcpiPlatformDxe/AcpiPlatformDxe.inf
363  OpenPlatformPkg/Chips/Hisilicon/Pv660/Drivers/UnInstallAcpiTableDxe/UnInstallAcpiTable.inf
364
365  #Pci Express
366  OpenPlatformPkg/Chips/Hisilicon/Pv660/Drivers/PcieInitDxe/PcieInitDxe.inf
367  OpenPlatformPkg/Chips/Hisilicon/Drivers/PciHostBridgeDxe/PciHostBridgeDxe.inf {
368     <LibraryClasses>
369       NULL|OpenPlatformPkg/Platforms/Hisilicon/D02/Library/PlatformPciLib/PlatformPciLib.inf
370  }
371  MdeModulePkg/Bus/Pci/PciBusDxe/PciBusDxe.inf
372
373  #
374  #network
375  #
376  OpenPlatformPkg/Platforms/Hisilicon/Binary/D02/Drivers/SnpPV600Dxe_PLAT/SnpPV600DxeMac4PhyInitOnly.inf
377  OpenPlatformPkg/Platforms/Hisilicon/Binary/D02/Drivers/SnpPV600Dxe_PLAT/SnpPV600DxeMac5.inf
378  MdeModulePkg/Universal/Network/ArpDxe/ArpDxe.inf
379  MdeModulePkg/Universal/Network/Dhcp4Dxe/Dhcp4Dxe.inf
380  MdeModulePkg/Universal/Network/DpcDxe/DpcDxe.inf
381  MdeModulePkg/Universal/Network/Ip4Dxe/Ip4Dxe.inf
382  MdeModulePkg/Universal/Network/MnpDxe/MnpDxe.inf
383  MdeModulePkg/Universal/Network/Mtftp4Dxe/Mtftp4Dxe.inf
384  MdeModulePkg/Universal/Network/Tcp4Dxe/Tcp4Dxe.inf
385  MdeModulePkg/Universal/Network/Udp4Dxe/Udp4Dxe.inf
386  MdeModulePkg/Universal/Network/UefiPxeBcDxe/UefiPxeBcDxe.inf
387
388  #
389  # FAT filesystem + GPT/MBR partitioning
390  #
391  OpenPlatformPkg/Drivers/Block/ramdisk/ramdisk.inf
392  MdeModulePkg/Universal/Disk/DiskIoDxe/DiskIoDxe.inf
393  MdeModulePkg/Universal/Disk/PartitionDxe/PartitionDxe.inf
394  MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
395
396  OpenPlatformPkg/Chips/Hisilicon/Drivers/SasV1Dxe/SasV1Dxe.inf
397  MdeModulePkg/Bus/Scsi/ScsiBusDxe/ScsiBusDxe.inf
398  MdeModulePkg/Bus/Scsi/ScsiDiskDxe/ScsiDiskDxe.inf
399  OpenPlatformPkg/Chips/Hisilicon/Pv660/Drivers/SasInitDxe/SasV1Init.inf
400
401  OpenPlatformPkg/Platforms/Hisilicon/Binary/D02/Ebl/Ebl.inf
402  MdeModulePkg/Application/HelloWorld/HelloWorld.inf
403  #
404  # Bds
405  #
406  MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
407
408  OpenPlatformPkg/Platforms/Hisilicon/Binary/D02/Drivers/AtaAtapiPassThru/AtaAtapiPassThru.inf
409  MdeModulePkg/Bus/Ata/AtaBusDxe/AtaBusDxe.inf
410
411  #
412  # USB Support
413  #
414  OpenPlatformPkg/Chips/Hisilicon/Drivers/VirtualEhciPciIo/VirtualEhciPciIo.inf
415  MdeModulePkg/Bus/Pci/EhciDxe/EhciDxe.inf
416  MdeModulePkg/Bus/Usb/UsbBusDxe/UsbBusDxe.inf
417  MdeModulePkg/Bus/Usb/UsbMassStorageDxe/UsbMassStorageDxe.inf
418
419
420  MdeModulePkg/Universal/SmbiosDxe/SmbiosDxe.inf
421  OpenPlatformPkg/Chips/Hisilicon/Drivers/Smbios/SmbiosMiscDxe/SmbiosMiscDxe.inf
422  OpenPlatformPkg/Chips/Hisilicon/Drivers/Smbios/MemorySubClassDxe/MemorySubClassDxe.inf
423  OpenPlatformPkg/Chips/Hisilicon/Drivers/Smbios/ProcessorSubClassDxe/ProcessorSubClassDxe.inf
424
425!ifdef $(FDT_ENABLE)
426  OpenPlatformPkg/Chips/Hisilicon/Drivers/UpdateFdtDxe/UpdateFdtDxe.inf {
427    <LibraryClasses>
428      BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
429  }
430!endif #$(FDT_ENABLE)
431
432  #
433  # Memory test
434  #
435  MdeModulePkg/Universal/MemoryTest/GenericMemoryTestDxe/GenericMemoryTestDxe.inf
436
437  MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
438  MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
439  IntelFrameworkModulePkg/Universal/BdsDxe/BdsDxe.inf
440
441  #
442  # UEFI application (Shell Embedded Boot Loader)
443  #
444  ShellPkg/Application/Shell/Shell.inf {
445    <LibraryClasses>
446      ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
447      NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib.inf
448      NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1CommandsLib.inf
449      NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3CommandsLib.inf
450      NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1CommandsLib.inf
451      NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.inf
452      NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1CommandsLib.inf
453      NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1CommandsLib.inf
454      HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
455      PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
456      BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCommandLib.inf
457!ifdef $(INCLUDE_DP)
458      NULL|ShellPkg/Library/UefiDpLib/UefiDpLib.inf
459!endif #$(INCLUDE_DP)
460!ifdef $(INCLUDE_TFTP_COMMAND)
461      NULL|ShellPkg/Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.inf
462!endif #$(INCLUDE_TFTP_COMMAND)
463
464    <PcdsFixedAtBuild>
465      gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0xFF
466      gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
467      gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|8000
468  }
469