Hi Leif,
From: Leif Lindholm [mailto:leif.lindholm@linaro.org] Sent: Saturday, November 05, 2016 5:54 AM
On Tue, Oct 18, 2016 at 01:34:13AM +0530, Bhupesh Sharma wrote:
From: Sakar Arora sakar.arora@nxp.com
The patch adds the device description, flash description and
declaration
files for the LS1043aRdbPkg.
In addition this patch also adds the build scripts required to build this package.
Signed-off-by: Sakar Arora sakar.arora@nxp.com Signed-off-by: Bhupesh Sharma bhupesh.sharma@nxp.com
Chips/Nxp/QoriqLs/NxpQoriqLs.dec | 50 +++ Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.dec | 166 ++++++++ Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.dsc | 602
+++++++++++++++++++++++++++++
Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.fdf | 311 +++++++++++++++ Platforms/Nxp/LS1043aRdb/build.sh | 72 ++++ Platforms/Nxp/LS1043aRdb/ls1043a_env.cshrc | 2 + 6 files changed, 1203 insertions(+) create mode 100644 Chips/Nxp/QoriqLs/NxpQoriqLs.dec create mode 100644 Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.dec create mode 100644 Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.dsc create mode 100644 Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.fdf create mode 100755 Platforms/Nxp/LS1043aRdb/build.sh create mode 100644 Platforms/Nxp/LS1043aRdb/ls1043a_env.cshrc
diff --git a/Chips/Nxp/QoriqLs/NxpQoriqLs.dec
b/Chips/Nxp/QoriqLs/NxpQoriqLs.dec
new file mode 100644 index 0000000..6b04836 --- /dev/null +++ b/Chips/Nxp/QoriqLs/NxpQoriqLs.dec
OK, this is a problem. This file is referenced by previous commits, which breaks bisect.
Ok, will fix this in v2.
@@ -0,0 +1,50 @@ +#/** LS1043a board package. +# +# Copyright (c) 2016, Freescale Semiconductor, Inc. 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]
- DEC_SPECIFICATION = 0x00010005
- PACKAGE_NAME = NxpQoriqLs
- PACKAGE_GUID = 6eba6648-d853-4eb3-9761-
528b82d5ab14
- PACKAGE_VERSION = 0.1
+###################################################################### ##########
+# +# Include Section - list of Include Paths that are provided by this
package.
+# Comments are used for Keywords and Module Types. +# +# Supported Module Types: +# BASE SEC PEI_CORE PEIM DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER
DXE_SMM_DRIVER DXE_SAL_DRIVER UEFI_DRIVER UEFI_APPLICATION
+#
+###################################################################### ##########
+[Includes.common]
- Include # Root include for the package
+[Guids.common]
- gNxpQoriqLsTokenSpaceGuid = { 0x6834fe45, 0x4aee, 0x4fc6, {
0xbc, 0xb5, 0xff, 0x45, 0xb7, 0xa8, 0x71, 0xf2 } }
+[PcdsFixedAtBuild.common]
- gNxpQoriqLsTokenSpaceGuid.PcdOcramStackBase|0x0|UINT32|0x00000001
gNxpQoriqLsTokenSpaceGuid.PcdFdNorBaseAddress|0x0|UINT64|0x00000002
- gNxpQoriqLsTokenSpaceGuid.PcdPiFdBaseAddress|0x0|UINT64|0x00000003
- gNxpQoriqLsTokenSpaceGuid.PcdPiFdSize|0x0|UINT32|0x00000004
gNxpQoriqLsTokenSpaceGuid.PcdFvNorBaseAddress|0x0|UINT64|0x00000005
- gNxpQoriqLsTokenSpaceGuid.PcdFvNorSize|0x0|UINT32|0x00000006
- gNxpQoriqLsTokenSpaceGuid.PcdI2cBus|0|UINT32|0x0000007
- gNxpQoriqLsTokenSpaceGuid.PcdRtcI2cBus|0|UINT32|0x0000008
- gNxpQoriqLsTokenSpaceGuid.PcdDs1307I2cAddress|0|UINT32|0x0000009
gNxpQoriqLsTokenSpaceGuid.PcdPpaFitConfiguration|""|VOID*|0x000000A
- gNxpQoriqLsTokenSpaceGuid.PcdPpaNorBaseAddr|0x0|UINT64|0x000000B
- gNxpQoriqLsTokenSpaceGuid.PcdPpaDdrOffsetAddr|0x0|UINT64|0x000000C
- gNxpQoriqLsTokenSpaceGuid.PcdI2cSpeed|0|UINT32|0x000000D
Sort these, please.
Sure.
diff --git a/Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.dec
b/Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.dec
new file mode 100644 index 0000000..9df3eb7 --- /dev/null +++ b/Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.dec
Another bisect breakage. These need to go in before the components that reference them.
Ok.
@@ -0,0 +1,166 @@ +#/** LS1043a board package. +# +# Copyright (c) 2016, Freescale Semiconductor, Inc. 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]
- DEC_SPECIFICATION = 0x00010005
- PACKAGE_NAME = LS1043aRdbPkg
- PACKAGE_GUID = 6eba6648-d853-4eb3-9761-
528b82d5ab04
- PACKAGE_VERSION = 0.1
+###################################################################### ##########
+# +# Include Section - list of Include Paths that are provided by this
package.
+# Comments are used for Keywords and Module Types. +# +# Supported Module Types: +# BASE SEC PEI_CORE PEIM DXE_CORE DXE_DRIVER DXE_RUNTIME_DRIVER
DXE_SMM_DRIVER DXE_SAL_DRIVER UEFI_DRIVER UEFI_APPLICATION
+#
+###################################################################### ##########
+[Includes.common]
- Include # Root include for the package
+[Guids.common]
- gLS1043aRdbTokenSpaceGuid = { 0x6834fe45, 0x4aee, 0x4fc6, {
0xbc, 0xb5, 0xff, 0x45, 0xb7, 0xa8, 0x71, 0xe2 } }
- gEfiMmcHostProtocolGuid = { 0x3e591c00, 0x9e4a, 0x11df,
{0x92, 0x44, 0x00, 0x02, 0xA5, 0xD5, 0xC5, 0x1B }}
- gShellDebug1HiiGuid = {0x25f200aa, 0xd3cb, 0x470a,
{0xbf, 0x51, 0xe7, 0xd1, 0x62, 0xd2, 0x2e, 0x6f}}
- gShellNetwork1HiiGuid = {0xf3d301bb, 0xf4a5, 0x45a8,
{0xb0, 0xb7, 0xfa, 0x99, 0x9c, 0x62, 0x37, 0xae}}
- gEfiDpcProtocolGuid = {0x480f8ae9, 0xc46, 0x4aa9, {
0xbc, 0x89, 0xdb, 0x9f, 0xba, 0x61, 0x98, 0x6 }}
- gShellTftpHiiGuid = {0x738a9314, 0x82c1, 0x4592,
{0x8f, 0xf7, 0xc1, 0xbd, 0xf1, 0xb2, 0x0e, 0xd4}}
Sort these, please.
Ok.
- ## Include/Protocol/SimpleNetwork.h
- gEfiSimpleNetworkProtocolGuid = { 0xA19832B9, 0xAC25, 0x11D3, {
0x9A, 0x2D, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D }}
- ## Include/Protocol/ManagedNetwork.h
- gEfiManagedNetworkServiceBindingProtocolGuid = { 0xF36FF770,
0xA7E1, 0x42CF, { 0x9E, 0xD2, 0x56, 0xF0, 0xF2, 0x71, 0xF4, 0x4C }}
- ## Include/Protocol/ManagedNetwork.h
- gEfiManagedNetworkProtocolGuid = { 0x7ab33a91, 0xace5, 0x4326, {
0xb5, 0x72, 0xe7, 0xee, 0x33, 0xd3, 0x9f, 0x16 }}
- ## Include/Protocol/HiiConfigRouting.h
- gEfiHiiConfigRoutingProtocolGuid = {0x587e72d7, 0xcc50, 0x4f79,
{0x82, 0x09, 0xca, 0x29, 0x1f, 0xc1, 0xa1, 0x0f}}
- ## Include/Protocol/Arp.h
- gEfiArpServiceBindingProtocolGuid = { 0xF44C00EE, 0x1F2C, 0x4A00,
{ 0xAA, 0x09, 0x1C, 0x9F, 0x3E, 0x08, 0x00, 0xA3 }}
- ## Include/Protocol/Arp.h
- gEfiArpProtocolGuid = { 0xF4B427BB, 0xBA21, 0x4F16, {
0xBC, 0x4E, 0x43, 0xE4, 0x16, 0xAB, 0x61, 0x9C }}
- ## Include/Protocol/Dhcp4.h
- gEfiDhcp4ServiceBindingProtocolGuid = { 0x9D9A39D8, 0xBD42,
0x4A73, { 0xA4, 0xD5, 0x8E, 0xE9, 0x4B, 0xE1, 0x13, 0x80 }}
Why are you redefining all of these that already exist in MdePkg.dec? Please delete all of these (including the below ones).
Ok.
- ## Include/Protocol/Dhcp4.h
- gEfiDhcp4ProtocolGuid = { 0x8A219718, 0x4EF5, 0x4761, {
0x91, 0xC8, 0xC0, 0xF0, 0x4B, 0xDA, 0x9E, 0x56 }}
- ## Include/Protocol/Tcp4.h
- gEfiTcp4ServiceBindingProtocolGuid = { 0x00720665, 0x67EB, 0x4A99,
{ 0xBA, 0xF7, 0xD3, 0xC3, 0x3A, 0x1C, 0x7C, 0xC9 }}
- ## Include/Protocol/Tcp4.h
- gEfiTcp4ProtocolGuid = { 0x65530BC7, 0xA359, 0x410F, {
0xB0, 0x10, 0x5A, 0xAD, 0xC7, 0xEC, 0x2B, 0x62 }}
- ## Include/Protocol/Ip4.h
- gEfiIp4ServiceBindingProtocolGuid = { 0xC51711E7, 0xB4BF, 0x404A,
{ 0xBF, 0xB8, 0x0A, 0x04, 0x8E, 0xF1, 0xFF, 0xE4 }}
- ## Include/Protocol/Ip4.h
- gEfiIp4ProtocolGuid = { 0x41D94CD2, 0x35B6, 0x455A, {
0x82, 0x58, 0xD4, 0xE5, 0x13, 0x34, 0xAA, 0xDD }}
- ## Include/Protocol/Ip4Config.h
- gEfiIp4ConfigProtocolGuid = { 0x3B95AA31, 0x3793, 0x434B, {
0x86, 0x67, 0xC8, 0x07, 0x08, 0x92, 0xE0, 0x5E }}
- ## Include/Protocol/Udp4.h
- gEfiUdp4ServiceBindingProtocolGuid = { 0x83F01464, 0x99BD, 0x45E5,
{ 0xB3, 0x83, 0xAF, 0x63, 0x05, 0xD8, 0xE9, 0xE6 }}
- ## Include/Protocol/Udp4.h
- gEfiUdp4ProtocolGuid = { 0x3AD9DF29, 0x4501, 0x478D, {
0xB1, 0xF8, 0x7F, 0x7F, 0xE7, 0x0E, 0x50, 0xF3 }}
- ## Include/Protocol/Mtftp4.h
- gEfiMtftp4ServiceBindingProtocolGuid = { 0x2FE800BE, 0x8F01,
0x4AA6, { 0x94, 0x6B, 0xD7, 0x13, 0x88, 0xE1, 0x83, 0x3F }}
- ## Include/Protocol/Mtftp4.h
- gEfiMtftp4ProtocolGuid = { 0x78247C57, 0x63DB, 0x4708, {
0x99, 0xC2, 0xA8, 0xB4, 0xA9, 0xA6, 0x1F, 0x6B }}
+[PcdsFixedAtBuild.common]
- # Size to reserve in the primary core stack for PEI Global
Variables
- # = sizeof(UINTN) /* PcdPeiServicePtr or HobListPtr */
gArmPlatformTokenSpaceGuid.PcdPeiGlobalVariableSize|0x4|UINT32|0x000000 16
gArmPlatformTokenSpaceGuid.PcdCounterFrequency|12000000|UINT32|0x000000 17
New Pcds you are defining in this file should be in your own token space. In this case, gLS1043aRdbTokenSpaceGuid. Like it's done in NxpQoriqLs.dec.
Ok.
- ## LS1043a UART
gArmPlatformTokenSpaceGuid.LS1043aUartClkInHz|61440000|UINT32|0x0000001 8
- gArmPlatformTokenSpaceGuid.LS1043aUartInteger|0|UINT32|0x00000019
gArmPlatformTokenSpaceGuid.LS1043aUartFractional|0|UINT32|0x0000001A
- ## Timer
- gArmTokenSpaceGuid.PcdArmArchTimerFreqInHz|0|UINT32|0x0000001B
- gEmbeddedTokenSpaceGuid.PcdTimerPeriod|10000|UINT32|0x0000001D
gArmPlatformTokenSpaceGuid.PcdArmArchTimerVirtIntrNum|0|UINT32|0x000000 1E
gArmPlatformTokenSpaceGuid.PcdArmArchTimerHypIntrNum|0|UINT32|0x0000001 F
gArmPlatformTokenSpaceGuid.PcdArmArchTimerSecIntrNum|0|UINT32|0x0000002 0
gArmPlatformTokenSpaceGuid.PcdArmArchTimerIntrNum|0|UINT32|0x00000021
- gEmbeddedTokenSpaceGuid.PcdMetronomeTickPeriod|0|UINT32|0x00000022
gArmPlatformTokenSpaceGuid.PcdLS1043aWatchDogBase|0x0|UINT32|0x00000023
- gArmPlatformTokenSpaceGuid.DUartClkInHz|0x0|UINT32|0x00000024
- gArmPlatformTokenSpaceGuid.DUartInteger|0x0|UINT32|0x00000025
- ## Ddr
- gArmTokenSpaceGuid.PcdDdrInitialize|FALSE|BOOLEAN|0x00000026
- #
- # LS1043a Soc Specific PCDs
- #
gArmPlatformTokenSpaceGuid.PcdCounterFrequencyReal|FALSE|BOOLEAN|0x0000 0027
gArmPlatformTokenSpaceGuid.PcdCsuInitialize|FALSE|BOOLEAN|0x00000028
gArmPlatformTokenSpaceGuid.PcdTzc380Initialize|FALSE|BOOLEAN|0x00000029
gArmPlatformTokenSpaceGuid.PcdCci400Initialize|FALSE|BOOLEAN|0x0000002A
gArmPlatformTokenSpaceGuid.PcdClockInitialize|FALSE|BOOLEAN|0x0000002B
- gLS1043aRdbTokenSpaceGuid.PcdFdNandLba|0x0|UINT32|0x00000031
#gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE|BOOLEAN|0x0 0000039
- #
- # PPA specific PCDs
- #
- gArmPlatformTokenSpaceGuid.PcdPpaNorBaseAddr|0x0|UINT64|0x00000032
gArmPlatformTokenSpaceGuid.PcdPpaDdrOffsetAddr|0x0|UINT64|0x00000033 # calculated from top of DDR
gLS1043aRdbTokenSpaceGuid.PcdPpaFitConfiguration|""|VOID*|0x00000034
- ## PCI
- # This value is used to set the base address of PCI express
hierarchy.
- # @Prompt PCI Express Base Address.
- #
gArmPlatformTokenSpaceGuid.PcdPciMaxPayloadFixup|FALSE|BOOLEAN|0x000000 40
gArmPlatformTokenSpaceGuid.PcdPciBusHotPlugDeviceSupport|TRUE|BOOLEAN|0 x00000041
gArmPlatformTokenSpaceGuid.PcdKludgeMapPciMmioAsCached|FALSE|BOOLEAN|0x 00000006
- gArmPlatformTokenSpaceGuid.PcdPciBusMin|0|UINT64|0x00000042
- gArmPlatformTokenSpaceGuid.PcdPciBusMax|255|UINT64|0x00000043
gArmPlatformTokenSpaceGuid.PcdPciIoBase|0x00010000|UINT64|0x00000044
gArmPlatformTokenSpaceGuid.PcdPciIoSize|0x00010000|UINT64|0x00000045
gArmPlatformTokenSpaceGuid.PcdPciMmio32Base|0x40000000|UINT32|0x0000004 6
gArmPlatformTokenSpaceGuid.PcdPciMmio32Size|0x40000000|UINT32|0x0000004 7
gArmPlatformTokenSpaceGuid.PcdPciMemTranslation|0x5000000000|UINT64|0x0 0000055
gArmPlatformTokenSpaceGuid.PcdPciMmio64Base|0x5040000000|UINT64|0x00000 048
gArmPlatformTokenSpaceGuid.PcdPciMmio64Size|0x0040000000|UINT64|0x00000 049
gArmPlatformTokenSpaceGuid.PcdPciIoTranslation|0x00010000|UINT64|0x0000 0050
gEfiMdePkgTokenSpaceGuid.PcdPci1ExpressBaseAddress|0x5000000000|UINT64| 0x00000051
gEfiMdePkgTokenSpaceGuid.PcdPci2ExpressBaseAddress|0x4800000000|UINT64| 0x00000052
gEfiMdePkgTokenSpaceGuid.PcdPci3ExpressBaseAddress|0x5000000000|UINT64| 0x00000058
gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x03600000|UINT64|0x0 000004D
- gLS1043aRdbTokenSpaceGuid.PcdBootMode|0x0|UINT32|0x00000038
- gLS1043aRdbTokenSpaceGuid.PcdPpaNandLba|0x10|UINT32|0x00000039
gLS1043aRdbTokenSpaceGuid.PcdPpaImageSize|0x100000|UINT32|0x00000040
- gLS1043aRdbTokenSpaceGuid.PcdPpaSdxcLba|0x10|UINT32|0x00000041
- gLS1043aRdbTokenSpaceGuid.PcdFdSdxcLba|0x0|UINT32|0x00000042
diff --git a/Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.dsc
b/Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.dsc
new file mode 100644 index 0000000..1e3c2db --- /dev/null +++ b/Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.dsc @@ -0,0 +1,602 @@ +#/** LS1043A board package. +# +# Copyright (c) 2016, Freescale Semiconductor, Inc. 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 Section - statements that will be processed to create a
Makefile.
+#
+###################################################################### ##########
+[Defines]
- #
- # Defines for default states. These can be changed on the command
line.
- # -D FLAG=VALUE
- #
- PLATFORM_NAME = LS1043aRdbPkg
- PLATFORM_GUID = 60169ec4-d2b4-44f8-825e-
f8684fd42e4f
- PLATFORM_VERSION = 0.1
- DSC_SPECIFICATION = 0x00010005
- OUTPUT_DIRECTORY = Build/LS1043aRdb
- SUPPORTED_ARCHITECTURES = AARCH64
- BUILD_TARGETS = DEBUG|RELEASE
- SKUID_IDENTIFIER = DEFAULT
- FLASH_DEFINITION =
OpenPlatformPkg/Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.fdf
+[LibraryClasses.common]
- ArmLib|ArmPkg/Library/ArmLib/ArmBaseLib.inf
ArmCpuLib|ArmPkg/Drivers/ArmCpuLib/ArmCortexAEMv8Lib/ArmCortexAEMv8Lib. inf
- ArmSmcLib|ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf
- ArmMmuLib|ArmPkg/Library/ArmMmuLib/ArmMmuBaseLib.inf
ArmGenericTimerCounterLib|ArmPkg/Library/ArmGenericTimerPhyCounterLib/A rmGenericTimerPhyCounterLib.inf
- TimerLib|ArmPkg/Library/ArmArchTimerLib/ArmArchTimerLib.inf
SocLib|OpenPlatformPkg/Platforms/Nxp/LS1043aRdb/Library/LS1043aSocLib/L S1043aSocLib.inf
ArmTrustZoneLib|ArmPlatformPkg/Drivers/ArmTrustZone/ArmTrustZone.inf
CpldLib|OpenPlatformPkg/Platforms/Nxp/LS1043aRdb/Library/CpldLib/CpldLi b.inf
ArmPlatformLib|OpenPlatformPkg/Platforms/Nxp/LS1043aRdb/Library/LS1043a RdbLib/LS1043aRdbLib.inf
ArmPlatformStackLib|ArmPlatformPkg/Library/ArmPlatformStackLib/ArmPlatf ormStackLib.inf
- HiiLib|MdeModulePkg/Library/UefiHiiLib/UefiHiiLib.inf
UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServi cesLib.inf
FileExplorerLib|MdeModulePkg/Library/FileExplorerLib/FileExplorerLib.in f
#ImageDecoderLib|MdeModulePkg/Library/ImageDecoderLib/ImageDecoderLib.i nf
- BootLogoLib|MdeModulePkg/Library/BootLogoLib/BootLogoLib.inf
PlatformBootManagerLib|ArmPkg/Library/PlatformBootManagerLib/PlatformBo otManagerLib.inf
- DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
UefiBootManagerLib|MdeModulePkg/Library/UefiBootManagerLib/UefiBootMana gerLib.inf
CustomizedDisplayLib|MdeModulePkg/Library/CustomizedDisplayLib/Customiz edDisplayLib.inf
+# Networking Requirements
- NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
- DpcLib|MdeModulePkg/Library/DxeDpcLib/DxeDpcLib.inf
- UdpIoLib|MdeModulePkg/Library/DxeUdpIoLib/DxeUdpIoLib.inf
- IpIoLib|MdeModulePkg/Library/DxeIpIoLib/DxeIpIoLib.inf
- # ARM GIC400 General Interrupt Driver
- ArmGicLib|ArmPkg/Drivers/ArmGic/ArmGicLib.inf
- ArmGicArchLib|ArmPkg/Library/ArmGicArchLib/ArmGicArchLib.inf
+!if $(TARGET) == RELEASE
DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.i nf
UncachedMemoryAllocationLib|ArmPkg/Library/UncachedMemoryAllocationLib/ UncachedMemoryAllocationLib.inf
+!else
DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.i nf
UncachedMemoryAllocationLib|ArmPkg/Library/UncachedMemoryAllocationLib/ UncachedMemoryAllocationLib.inf
+!endif
Both conditions invoke the same libraries.
Ok, will fix this.
DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/Base DebugPrintErrorLevelLib.inf
- # I2c Library
- I2cLib|OpenPlatformPkg/Chips/Nxp/QoriqLs/Library/I2cLib/I2cLib.inf
- # Ddr Library
DdrLib|OpenPlatformPkg/Platforms/Nxp/LS1043aRdb/Library/DdrLib/DdrLib.i nf
MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAl locationLib.inf
- BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
SynchronizationLib|MdePkg/Library/BaseSynchronizationLib/BaseSynchroniz ationLib.inf
- BaseMemoryLib|ArmPkg/Library/BaseMemoryLibStm/BaseMemoryLibStm.inf
EfiResetSystemLib|OpenPlatformPkg/Platforms/Nxp/LS1043aRdb/Library/Rese tSystemLib/ResetSystemLib.inf
PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLib Null.inf
- PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
- EfiFileLib|EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf
- PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
PeCoffGetEntryPointLib|MdePkg/Library/BasePeCoffGetEntryPointLib/BasePe CoffGetEntryPointLib.inf
PeCoffExtraActionLib|ArmPkg/Library/DebugPeCoffExtraActionLib/DebugPeCo ffExtraActionLib.inf
CacheMaintenanceLib|ArmPkg/Library/ArmCacheMaintenanceLib/ArmCacheMaint enanceLib.inf
DefaultExceptionHandlerLib|ArmPkg/Library/DefaultExceptionHandlerLib/De faultExceptionHandlerLib.inf
CpuExceptionHandlerLib|ArmPkg/Library/ArmExceptionLib/ArmExceptionLib.i nf
- PrePiLib|EmbeddedPkg/Library/PrePiLib/PrePiLib.inf
RealTimeClockLib|OpenPlatformPkg/Chips/Nxp/QoriqLs/Library/Ds1307RtcLib /Ds1307RtcLib.inf
- SemihostLib|ArmPkg/Library/SemihostLib/SemihostLib.inf
- # UART Driver
SerialPortLib|OpenPlatformPkg/Chips/Nxp/QoriqLs/Library/DUartPortLib/DU artPortLib.inf
- IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAl locationLib.inf
- UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
- HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/ UefiRuntimeServicesTableLib.inf
DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBo otServicesTableLib.inf
DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTable Lib.inf
UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntr yPoint.inf
UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/Uefi ApplicationEntryPoint.inf
+# +# Assume everything is fixed at build +#
- PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
- UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
- UefiUsbLib|MdePkg/Library/UefiUsbLib/UefiUsbLib.inf
- CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
ArmDisassemblerLib|ArmPkg/Library/ArmDisassemblerLib/ArmDisassemblerLib .inf
DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull. inf
- DmaLib|ArmPkg/Library/ArmDmaLib/ArmDmaLib.inf
- BdsLib|ArmPkg/Library/BdsLib/BdsLib.inf
- FdtLib|EmbeddedPkg/Library/FdtLib/FdtLib.inf
- ShellLib|ShellPkg/Library/UefiShellLib/UefiShellLib.inf
ShellCommandLib|ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLi b.inf
FileHandleLib|MdePkg/Library/UefiFileHandleLib/UefiFileHandleLib.inf
ShellCEntryLib|ShellPkg/Library/UefiShellCEntryLib/UefiShellCEntryLib.i nf
- SortLib|MdeModulePkg/Library/UefiSortLib/UefiSortLib.inf
- NetLib|MdeModulePkg/Library/DxeNetLib/DxeNetLib.inf
HandleParsingLib|ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsin gLib.inf
BcfgCommandLib|ShellPkg/Library/UefiShellBcfgCommandLib/UefiShellBcfgCo mmandLib.inf
TpmMeasurementLib|MdeModulePkg/Library/TpmMeasurementLibNull/TpmMeasure mentLibNull.inf
AuthVariableLib|MdeModulePkg/Library/AuthVariableLibNull/AuthVariableLi bNull.inf
- VarCheckLib|MdeModulePkg/Library/VarCheckLib/VarCheckLib.inf
+[LibraryClasses.common.SEC]
- PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
ReportStatusCodeLib|IntelFrameworkModulePkg/Library/PeiDxeDebugLibRepor tStatusCode/PeiDxeDebugLibReportStatusCode.inf
UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompre ssLib.inf
ExtractGuidedSectionLib|EmbeddedPkg/Library/PrePiExtractGuidedSectionLi b/PrePiExtractGuidedSectionLib.inf
LzmaDecompressLib|IntelFrameworkModulePkg/Library/LzmaCustomDecompressL ib/LzmaCustomDecompressLib.inf
- PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
- HobLib|EmbeddedPkg/Library/PrePiHobLib/PrePiHobLib.inf
PrePiHobListPointerLib|ArmPlatformPkg/Library/PrePiHobListPointerLib/Pr ePiHobListPointerLib.inf
MemoryAllocationLib|EmbeddedPkg/Library/PrePiMemoryAllocationLib/PrePiM emoryAllocationLib.inf
PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib .inf
- PlatformPeiLib|ArmPlatformPkg/PlatformPei/PlatformPeiLib.inf
- MemoryInitPeiLib|ArmPlatformPkg/MemoryInitPei/MemoryInitPeiLib.inf
- # 1/123 faster than Stm or Vstm version
- BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
- # Uncomment to turn on GDB stub in SEC.
- #DebugAgentLib|EmbeddedPkg/Library/GdbDebugAgent/GdbDebugAgent.inf
+[LibraryClasses.common.PEI_CORE]
- PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
ReportStatusCodeLib|IntelFrameworkModulePkg/Library/PeiDxeDebugLibRepor tStatusCode/PeiDxeDebugLibReportStatusCode.inf
+[LibraryClasses.common.DXE_CORE]
- HobLib|MdePkg/Library/DxeCoreHobLib/DxeCoreHobLib.inf
MemoryAllocationLib|MdeModulePkg/Library/DxeCoreMemoryAllocationLib/Dxe CoreMemoryAllocationLib.inf
DxeCoreEntryPoint|MdePkg/Library/DxeCoreEntryPoint/DxeCoreEntryPoint.in f
ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCode LibFramework/DxeReportStatusCodeLib.inf
ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeEx tractGuidedSectionLib.inf
UefiDecompressLib|MdePkg/Library/BaseUefiDecompressLib/BaseUefiDecompre ssLib.inf
- DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
- PeCoffLib|EmbeddedPkg/Library/DxeHobPeCoffLib/DxeHobPeCoffLib.inf
PerformanceLib|MdeModulePkg/Library/DxeCorePerformanceLib/DxeCorePerfor manceLib.inf
+[LibraryClasses.common.DXE_DRIVER]
ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCode LibFramework/DxeReportStatusCodeLib.inf
- DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
SecurityManagementLib|MdeModulePkg/Library/DxeSecurityManagementLib/Dxe SecurityManagementLib.inf
PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib .inf
- MemoryInitPeiLib|ArmPlatformPkg/MemoryInitPei/MemoryInitPeiLib.inf
+[LibraryClasses.common.UEFI_APPLICATION]
- PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
- HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCode LibFramework/DxeReportStatusCodeLib.inf
UefiDecompressLib|IntelFrameworkModulePkg/Library/BaseUefiTianoCustomDe compressLib/BaseUefiTianoCustomDecompressLib.inf
PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib .inf
+[LibraryClasses.common.UEFI_DRIVER]
ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCode LibFramework/DxeReportStatusCodeLib.inf
UefiDecompressLib|IntelFrameworkModulePkg/Library/BaseUefiTianoCustomDe compressLib/BaseUefiTianoCustomDecompressLib.inf
ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeEx tractGuidedSectionLib.inf
PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib .inf
- DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
+[LibraryClasses.common.DXE_RUNTIME_DRIVER]
- HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAl locationLib.inf
ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCode LibFramework/DxeReportStatusCodeLib.inf
CapsuleLib|MdeModulePkg/Library/DxeCapsuleLibNull/DxeCapsuleLibNull.inf
- PeCoffLib|EmbeddedPkg/Library/DxeHobPeCoffLib/DxeHobPeCoffLib.inf
+[LibraryClasses.AARCH64]
- #
- # It is not possible to prevent the ARM compiler for generic
intrinsic functions.
- # This library provides the instrinsic functions generate by a
given compiler.
- # [LibraryClasses.ARM] and NULL mean link this library into all
ARM images.
- #
NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
+###################################################################### ##########
+# +# Pcd Section - list of all EDK II PCD Entries defined by this
Platform
+#
+###################################################################### ##########
+[PcdsFeatureFlag.common]
- ## If TRUE, Graphics Output Protocol will be installed on virtual
handle created by ConsplitterDxe.
- # It could be set FALSE to save size.
- gEfiMdeModulePkgTokenSpaceGuid.PcdConOutGopSupport|TRUE
- gEfiMdeModulePkgTokenSpaceGuid.PcdConOutUgaSupport|FALSE
- gEfiMdePkgTokenSpaceGuid.PcdComponentNameDisable|TRUE
- gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnosticsDisable|TRUE
- gEfiMdePkgTokenSpaceGuid.PcdComponentName2Disable|TRUE
- gEfiMdePkgTokenSpaceGuid.PcdDriverDiagnostics2Disable|TRUE
- #
- # Control what commands are supported from the UI
- # Turn these on and off to add features or save size
- #
- gEmbeddedTokenSpaceGuid.PcdEmbeddedMacBoot|TRUE
- gEmbeddedTokenSpaceGuid.PcdEmbeddedDirCmd|TRUE
- gEmbeddedTokenSpaceGuid.PcdEmbeddedHobCmd|TRUE
- gEmbeddedTokenSpaceGuid.PcdEmbeddedHwDebugCmd|TRUE
- gEmbeddedTokenSpaceGuid.PcdEmbeddedPciDebugCmd|TRUE
- gEmbeddedTokenSpaceGuid.PcdEmbeddedIoEnable|FALSE
- gEmbeddedTokenSpaceGuid.PcdEmbeddedScriptCmd|FALSE
- gEmbeddedTokenSpaceGuid.PcdCacheEnable|TRUE
- # Use the Vector Table location in CpuDxe. We will not copy the
Vector Table at PcdCpuVectorBaseAddress
- gArmTokenSpaceGuid.PcdRelocateVectorTable|FALSE
gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob|TRUE
- gArmTokenSpaceGuid.PcdCpuDxeProduceDebugSupport|FALSE
- gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport|TRUE
+[PcdsDynamicDefault.common]
- #
- # Set video resolution for boot options and for text setup.
- # PlatformDxe can set the former at runtime.
- #
- gEfiMdeModulePkgTokenSpaceGuid.PcdVideoHorizontalResolution|800
- gEfiMdeModulePkgTokenSpaceGuid.PcdVideoVerticalResolution|600
gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoHorizontalResolution|640
- gEfiMdeModulePkgTokenSpaceGuid.PcdSetupVideoVerticalResolution|480
+[PcdsFixedAtBuild.common]
- gEfiMdeModulePkgTokenSpaceGuid.PcdMaxVariableSize|0x2000
- gEfiMdeModulePkgTokenSpaceGuid.PcdMaxAuthVariableSize|0x2800
gEfiMdeModulePkgTokenSpaceGuid.PcdResetOnMemoryTypeInformationChange|FA LSE
- gEfiMdeModulePkgTokenSpaceGuid.PcdBootManagerMenuFile|{ 0x21,
0xaa, 0x2c, 0x46, 0x14, 0x76, 0x03, 0x45, 0x83, 0x6e, 0x8a, 0xb6, 0xf4, 0x66, 0x23, 0x31 }
- gEfiIntelFrameworkModulePkgTokenSpaceGuid.PcdShellFile|{ 0x83,
0xA5, 0x04, 0x7C, 0x3E, 0x9E, 0x1C, 0x4F, 0xAD, 0x65, 0xE0, 0x52, 0x68, 0xD0, 0xB4, 0xD1 }
- gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|20
- gArmPlatformTokenSpaceGuid.PcdFirmwareVendor|"LS1043a RDB board"
- gEmbeddedTokenSpaceGuid.PcdEmbeddedPrompt|"LS1043a"
- gArmPlatformTokenSpaceGuid.PcdCoreCount|1 # Only one core
- gArmPlatformTokenSpaceGuid.PcdCounterFrequency|12000000 #12Mhz
- gEfiMdePkgTokenSpaceGuid.PcdMaximumUnicodeStringLength|1000000
- gEfiMdePkgTokenSpaceGuid.PcdMaximumAsciiStringLength|2000000
- gEfiMdePkgTokenSpaceGuid.PcdMaximumLinkedListLength|1000000
- gEfiMdePkgTokenSpaceGuid.PcdSpinLockTimeout|10000000
- gEfiMdePkgTokenSpaceGuid.PcdDebugClearMemoryValue|0xAF
- gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|1
- #gEfiMdePkgTokenSpaceGuid.PcdPerformanceLibraryPropertyMask|0 #
turn off for now
- gEfiMdePkgTokenSpaceGuid.PcdPostCodePropertyMask|0
- gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|320
+# DEBUG_ASSERT_ENABLED 0x01 +# DEBUG_PRINT_ENABLED 0x02 +# DEBUG_CODE_ENABLED 0x04 +# CLEAR_MEMORY_ENABLED 0x08 +# ASSERT_BREAKPOINT_ENABLED 0x10 +# ASSERT_DEADLOOP_ENABLED 0x20 +!if $(TARGET) == RELEASE
- gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x27
- gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x81000000
#0x8000000F #Print almost everything
+!else
- gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2F
- gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x81000044
#0x8000000F #Print almost everything
+!endif
+# DEBUG_INIT 0x00000001 // Initialization +# DEBUG_WARN 0x00000002 // Warnings +# DEBUG_LOAD 0x00000004 // Load events +# DEBUG_FS 0x00000008 // EFI File system +# DEBUG_POOL 0x00000010 // Alloc & Free's +# DEBUG_PAGE 0x00000020 // Alloc & Free's +# DEBUG_INFO 0x00000040 // Verbose +# DEBUG_DISPATCH 0x00000080 // PEI/DXE Dispatchers +# DEBUG_VARIABLE 0x00000100 // Variable +# DEBUG_BM 0x00000400 // Boot Manager +# DEBUG_BLKIO 0x00001000 // BlkIo Driver +# DEBUG_NET 0x00004000 // SNI Driver +# DEBUG_UNDI 0x00010000 // UNDI Driver +# DEBUG_LOADFILE 0x00020000 // UNDI Driver +# DEBUG_EVENT 0x00080000 // Event messages +# DEBUG_ERROR 0x80000000 // Error
- gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
- gEmbeddedTokenSpaceGuid.PcdEmbeddedAutomaticBootCommand|""
- gEmbeddedTokenSpaceGuid.PcdEmbeddedDefaultTextColor|0x07
- gEmbeddedTokenSpaceGuid.PcdEmbeddedMemVariableStoreSize|0x10000
+# +# Optional feature to help prevent EFI memory map fragments +# Turned on and off via: PcdPrePiProduceMemoryTypeInformationHob +# Values are in EFI Pages (4K). DXE Core will make sure that +# at least this much of each type of memory can be allocated +# from a single memory range. This way you only end up with +# maximum of two fragements for each type in the memory map +# (the memory used, and the free memory that was prereserved +# but not used). +#
- gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory|0
- gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS|0
- gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType|0
- gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData|80
- gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode|40
- gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode|400
- gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData|3000
- gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode|10
- gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData|0
- # PCI PCDs
- #
- gArmPlatformTokenSpaceGuid.PcdKludgeMapPciMmioAsCached|FALSE
- gArmPlatformTokenSpaceGuid.PcdPciBusMin|0
- gArmPlatformTokenSpaceGuid.PcdPciBusMax|255
- gArmPlatformTokenSpaceGuid.PcdPciIoBase|0x00010000
- gArmPlatformTokenSpaceGuid.PcdPciIoSize|0x00010000 # 64k
- gArmPlatformTokenSpaceGuid.PcdPciIoTranslation|0x00010000
- gArmPlatformTokenSpaceGuid.PcdPciMmio32Base|0x40000000
- gArmPlatformTokenSpaceGuid.PcdPciMmio32Size|0x40000000 # 128M
- gArmPlatformTokenSpaceGuid.PcdPciMemTranslation|0x5000000000
- gArmPlatformTokenSpaceGuid.PcdPciMmio64Base|0x5040000000
- gArmPlatformTokenSpaceGuid.PcdPciMmio64Size|0x40000000
- gEfiMdePkgTokenSpaceGuid.PcdPci1ExpressBaseAddress|0x5000000000
- gEfiMdePkgTokenSpaceGuid.PcdPci2ExpressBaseAddress|0x4800000000
- gEfiMdePkgTokenSpaceGuid.PcdPci3ExpressBaseAddress|0x5000000000
- ## Serial Terminal
- gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase|0x21c0500
- gEfiMdePkgTokenSpaceGuid.PcdUartDefaultBaudRate|115200
- gEfiMdePkgTokenSpaceGuid.PcdDefaultTerminalType|4
- #
- # ARM General Interrupt Controller
- gArmTokenSpaceGuid.PcdGicDistributorBase|0x1401000
- gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase|0x1402000
- #
- # LS1043a board Specific PCDs
- # XX (DRAM - Region 1 2GB)
- # (NOR - IFC Region 1 512MB)
- gArmTokenSpaceGuid.PcdSystemMemoryBase|0x80000000
- gArmTokenSpaceGuid.PcdSystemMemorySize|0x80000000
- #
- # LS1043a Soc Specific PCDs
- #
- gArmPlatformTokenSpaceGuid.PcdCounterFrequencyReal|TRUE
- gArmPlatformTokenSpaceGuid.PcdCsuInitialize|TRUE
- gArmPlatformTokenSpaceGuid.PcdTzc380Initialize|TRUE
- gArmPlatformTokenSpaceGuid.PcdCci400Initialize|TRUE
- gArmPlatformTokenSpaceGuid.PcdClockInitialize|TRUE
- #
- # PPA specific PCDs
- #
- gNxpQoriqLsTokenSpaceGuid.PcdPpaNorBaseAddr|0x60500000
- gNxpQoriqLsTokenSpaceGuid.PcdPpaDdrOffsetAddr|0x8000000 # (128MB)
calculated from top of DDR
- # Size of the region used by UEFI in permanent memory (Reserved
16MB)
gArmPlatformTokenSpaceGuid.PcdSystemMemoryUefiRegionSize|0x01000000
- # Size of the region reserved for fixed address allocations
(Reserved 32MB)
- gArmTokenSpaceGuid.PcdArmLinuxKernelMaxOffset|0x08000000
- gArmTokenSpaceGuid.PcdArmLinuxFdtMaxOffset|0x08000000
- gArmTokenSpaceGuid.PcdArmLinuxFdtAlignment|0x0
- gArmTokenSpaceGuid.PcdCpuVectorBaseAddress|0x94A00000
- gArmTokenSpaceGuid.PcdCpuResetAddress|0x94A00000
- # Timer
- gArmTokenSpaceGuid.PcdArmArchTimerFreqInHz|0
- gEmbeddedTokenSpaceGuid.PcdTimerPeriod|10000 # expressed in 100ns
units, 100,000 x 100 ns = 10,000,000 ns = 10 ms
- gArmPlatformTokenSpaceGuid.PcdArmArchTimerVirtIntrNum|11 # Virtual
PPI
- gArmPlatformTokenSpaceGuid.PcdArmArchTimerHypIntrNum|10 #
Hypervisor PPI
- gArmPlatformTokenSpaceGuid.PcdArmArchTimerSecIntrNum|13 # Physical
Secure PPI
- gArmPlatformTokenSpaceGuid.PcdArmArchTimerIntrNum|14 # Physical
Non-Secure PPI
- gEmbeddedTokenSpaceGuid.PcdMetronomeTickPeriod|1000
#gEmbeddedTokenSpaceGuid.PcdEmbeddedPerformanceCounterPeriodInNanosecon ds|77
#gEmbeddedTokenSpaceGuid.PcdEmbeddedPerformanceCounterFrequencyInHz|130 00000
- # We want to use the Shell Libraries but don't want it to
initialise
- # automatically. We initialise the libraries when the command is
called by the
- # Shell.
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- #
- # ARM Pcds
- #
- gArmTokenSpaceGuid.PcdArmUncachedMemoryMask|0x0000000040000000
- gArmPlatformTokenSpaceGuid.PcdDefaultBootDescription|L"EFI Linux
from NOR flash"
gArmPlatformTokenSpaceGuid.PcdDefaultBootDevicePath|L"MemoryMapped(0x0, 0x61100000,0x6111FFFF)"
gEmbeddedTokenSpaceGuid.PcdFdtDevicePaths|L"MemoryMapped(0x0,0x61B00000 ,0x61BFFFFF)/fsl-ls1043a-uefi-rdb.dtb"
gArmPlatformTokenSpaceGuid.PcdDefaultBootArgument|L"MemoryMapped(0x0,0x 61120000,0x61AFFFFF) -d "MemoryMapped(0x0,0x61B00000,0x61BFFFFF)" -f "MemoryMapped(0x0,0x61C00000,0x638FFFFF)" -c "console=ttyS0,115200 root=/dev/ram0 earlycon=uart8250,0x21c0500,115200""
- # PPA
- gLS1043aRdbTokenSpaceGuid.PcdPpaFitConfiguration|"config@1"
- # Use the serial console for both ConIn & ConOut
- gArmPlatformTokenSpaceGuid.PcdDefaultConOutPaths|L"VenHw(D3987D4B-
971A-435F-8CAF-4967EB627241)/Uart(115200,8,N,1)/VenPcAnsi();"
- gArmPlatformTokenSpaceGuid.PcdDefaultConInPaths|L"VenHw(D3987D4B-
971A-435F-8CAF-4967EB627241)/Uart(115200,8,N,1)/VenPcAnsi()"
- gEfiShellPkgTokenSpaceGuid.PcdShellLibAutoInitialize|FALSE
- gEfiMdePkgTokenSpaceGuid.PcdUefiLibMaxPrintBufferSize|16000
+!ifdef $(NO_SHELL_PROFILES)
- gEfiShellPkgTokenSpaceGuid.PcdShellProfileMask|0x00
+!endif #$(NO_SHELL_PROFILES)
- gNxpQoriqLsTokenSpaceGuid.PcdFdNorBaseAddress|0x60400000
- gNxpQoriqLsTokenSpaceGuid.PcdOcramStackBase|0x10010000
- gNxpQoriqLsTokenSpaceGuid.PcdI2cBus|0
- gNxpQoriqLsTokenSpaceGuid.PcdI2cSpeed|10000
- gNxpQoriqLsTokenSpaceGuid.PcdRtcI2cBus|0
- gNxpQoriqLsTokenSpaceGuid.PcdDs1307I2cAddress|0x68
+###################################################################### ##########
+# +# Components Section - list of all EDK II Modules needed by this
Platform
+#
+###################################################################### ##########
+[Components.common]
- #
- # SEC
- #
- OpenPlatformPkg/Chips/Nxp/QoriqLs/Library/PrePiNor/PrePiNor.inf
- ArmPlatformPkg/PrePi/PeiUniCore.inf
- #
- # DXE
- #
- MdeModulePkg/Core/Dxe/DxeMain.inf {
<LibraryClasses>
PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
NULL|MdeModulePkg/Library/DxeCrc32GuidedSectionExtractLib/DxeCrc32Guide dSectionExtractLib.inf
NULL|EmbeddedPkg/Library/LzmaHobCustomDecompressLib/LzmaHobCustomDecomp ressLib.inf
- }
- MdeModulePkg/Universal/PCD/Dxe/Pcd.inf {
<LibraryClasses>
PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
- }
- #
- # Architectural Protocols
- #
- ArmPkg/Drivers/CpuDxe/CpuDxe.inf
- MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
- MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
- MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf
- EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf
- # FDT installation
- EmbeddedPkg/Drivers/FdtPlatformDxe/FdtPlatformDxe.inf
- MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
- MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.in f
- MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
- MdeModulePkg/Universal/SerialDxe/SerialDxe.inf
- MdeModulePkg/Universal/Acpi/AcpiTableDxe/AcpiTableDxe.inf
- EmbeddedPkg/ResetRuntimeDxe/ResetRuntimeDxe.inf
- EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf
- EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf
- ArmPkg/Drivers/TimerDxe/TimerDxe.inf
OpenPlatformPkg/Platforms/Nxp/LS1043aRdb/LS1043aWatchDog/LS1043aWatchDo gDxe.inf
- ArmPkg/Drivers/ArmGic/ArmGicDxe.inf
- EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf
- #
- # PPA
- #
- OpenPlatformPkg/Chips/Nxp/QoriqLs/PpaInitDxe/PpaInitDxe.inf
- #
- # FAT filesystem + GPT/MBR partitioning
- #
MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
- #
- # I2C
- #
- OpenPlatformPkg/Chips/Nxp/QoriqLs/I2c/I2cDxe.inf
- #
- # Bds
- #
- MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
- MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
- MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
- MdeModulePkg/Universal/BdsDxe/BdsDxe.inf
- MdeModulePkg/Application/UiApp/UiApp.inf {
<LibraryClasses>
NULL|MdeModulePkg/Library/DeviceManagerUiLib/DeviceManagerUiLib.inf
NULL|MdeModulePkg/Library/BootManagerUiLib/BootManagerUiLib.inf
NULL|MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceMa nagerUiLib.inf
- }
- MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
- #
- # Example Application
- #
- MdeModulePkg/Application/HelloWorld/HelloWorld.inf
- ShellPkg/Library/UefiShellLib/UefiShellLib.inf
- ShellPkg/Library/UefiShellCommandLib/UefiShellCommandLib.inf
ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2CommandsLib. inf
- ShellPkg/Library/UefiHandleParsingLib/UefiHandleParsingLib.inf
- ShellPkg/Library/UefiDpLib/UefiDpLib.inf {
<LibraryClasses>
TimerLib|MdePkg/Library/BaseTimerLibNullTemplate/BaseTimerLibNullTempla te.inf
PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLib Null.inf
DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
- }
+ShellPkg/Application/Shell/Shell.inf {
<LibraryClasses>
NULL|ShellPkg/Library/UefiShellLevel2CommandsLib/UefiShellLevel2Command sLib.inf
NULL|ShellPkg/Library/UefiShellLevel1CommandsLib/UefiShellLevel1Command sLib.inf
NULL|ShellPkg/Library/UefiShellLevel3CommandsLib/UefiShellLevel3Command sLib.inf
+!ifndef $(NO_SHELL_PROFILES)
NULL|ShellPkg/Library/UefiShellDriver1CommandsLib/UefiShellDriver1Comma ndsLib.inf
NULL|ShellPkg/Library/UefiShellInstall1CommandsLib/UefiShellInstall1Com mandsLib.inf
NULL|ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1Command sLib.inf
NULL|ShellPkg/Library/UefiShellNetwork1CommandsLib/UefiShellNetwork1Com mandsLib.inf
NULL|ShellPkg/Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.i nf
+!ifdef $(INCLUDE_DP)
NULL|ShellPkg/Library/UefiDpLib/UefiDpLib.inf
+!endif #$(INCLUDE_DP) +!ifdef $(INCLUDE_TFTP_COMMAND)
NULL|ShellPkg/Library/UefiShellTftpCommandLib/UefiShellTftpCommandLib.i nf
+!endif #$(INCLUDE_TFTP_COMMAND) +!endif #$(NO_SHELL_PROFILES)
}
- ##
diff --git a/Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.fdf
b/Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.fdf
new file mode 100644 index 0000000..1633630 --- /dev/null +++ b/Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.fdf @@ -0,0 +1,311 @@ +# FLASH layout file for LS1043a board. +# +# Copyright (c) 2016, Freescale 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.
+#
+###################################################################### ##########
+# +# FD Section +# The [FD] Section is made up of the definition statements and a +# description of what goes into the Flash Device Image. Each FD
section
+# defines one flash "device" image. A flash device image may be one
of
+# the following: Removable media bootable image (like a boot floppy +# image,) an Option ROM image (that would be "flashed" into an add-
in
+# card,) a System "Flash" image (that would be burned into a
system's
+# flash) or an Update ("Capsule") image that will be used to update
and
+# existing system flash. +#
+###################################################################### ##########
+[FD.LS1043aRdb_EFI] +BaseAddress = 0xE0000000|gArmTokenSpaceGuid.PcdFdBaseAddress #The
base address of the FLASH Device.
+Size = 0x000C8000|gArmTokenSpaceGuid.PcdFdSize #The
size in bytes of the FLASH Device
+ErasePolarity = 1 +BlockSize = 0x1 +NumBlocks = 0xC8000
+###################################################################### ##########
+# +# Following are lists of FD Region layout which correspond to the
locations of different
+# images within the flash device. +# +# Regions must be defined in ascending order and may not overlap. +# +# A Layout Region start with a eight digit hex offset (leading "0x"
required) followed by
+# the pipe "|" character, followed by the size of the region, also
in hex with the leading
+# "0x" characters. Like: +# Offset|Size +# PcdOffsetCName|PcdSizeCName +# RegionType <FV, DATA, or FILE> +#
+###################################################################### ##########
+0x00000000|0x000C8000 +gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize +FV = FVMAIN_COMPACT
+[FD.LS1043aRdbPi_EFI] +BaseAddress =
0x60400000|gNxpQoriqLsTokenSpaceGuid.PcdPiFdBaseAddress #The base address of the FLASH Device.
+Size = 0x00008000|gNxpQoriqLsTokenSpaceGuid.PcdPiFdSize
#The size in bytes of the FLASH Device
+ErasePolarity = 1 +BlockSize = 0x1 +NumBlocks = 0x8000
+0x00000000|0x00008000
+gNxpQoriqLsTokenSpaceGuid.PcdFvNorBaseAddress|gNxpQoriqLsTokenSpaceGui d.PcdFvNorSize
+FV = FVNOR_COMPACT
+###################################################################### ##########
+# +# FV Section +# +# [FV] section is used to define what components or modules are
placed within a flash
+# device file. This section also defines order the components and
modules are positioned
+# within the image. The [FV] section consists of define statements,
set statements and
+# module statements. +#
+###################################################################### ##########
+[FV.FvMain] +BlockSize = 0x1 +NumBlocks = 0 # This FV gets compressed so make it
just big enough
+FvAlignment = 8 # FV alignment and FV attributes
setting.
+ERASE_POLARITY = 1 +MEMORY_MAPPED = TRUE +STICKY_WRITE = TRUE +LOCK_CAP = TRUE +LOCK_STATUS = TRUE +WRITE_DISABLED_CAP = TRUE +WRITE_ENABLED_CAP = TRUE +WRITE_STATUS = TRUE +WRITE_LOCK_CAP = TRUE +WRITE_LOCK_STATUS = TRUE +READ_DISABLED_CAP = TRUE +READ_ENABLED_CAP = TRUE +READ_STATUS = TRUE +READ_LOCK_CAP = TRUE +READ_LOCK_STATUS = TRUE
- INF MdeModulePkg/Core/Dxe/DxeMain.inf
- INF MdeModulePkg/Universal/PCD/Dxe/Pcd.inf
- INF OpenPlatformPkg/Chips/Nxp/QoriqLs/PpaInitDxe/PpaInitDxe.inf
- #
- # PI DXE Drivers producing Architectural Protocols (EFI Services)
- #
- INF ArmPkg/Drivers/CpuDxe/CpuDxe.inf
- INF MdeModulePkg/Core/RuntimeDxe/RuntimeDxe.inf
- INF ArmPkg/Drivers/ArmGic/ArmGicDxe.inf
- INF ArmPkg/Drivers/TimerDxe/TimerDxe.inf
- INF
OpenPlatformPkg/Platforms/Nxp/LS1043aRdb/LS1043aWatchDog/LS1043aWatchDo gDxe.inf
- INF MdeModulePkg/Universal/SecurityStubDxe/SecurityStubDxe.inf
- INF MdeModulePkg/Universal/CapsuleRuntimeDxe/CapsuleRuntimeDxe.inf
- INF MdeModulePkg/Universal/HiiDatabaseDxe/HiiDatabaseDxe.inf
- INF
EmbeddedPkg/EmbeddedMonotonicCounter/EmbeddedMonotonicCounter.inf
- INF
MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf
- #
- # Multiple Console IO support
- #
- INF
MdeModulePkg/Universal/Console/ConPlatformDxe/ConPlatformDxe.inf
- INF
MdeModulePkg/Universal/Console/ConSplitterDxe/ConSplitterDxe.inf
- INF
MdeModulePkg/Universal/Console/GraphicsConsoleDxe/GraphicsConsoleDxe.in f
- INF MdeModulePkg/Universal/SerialDxe/SerialDxe.inf
- INF MdeModulePkg/Universal/Console/TerminalDxe/TerminalDxe.inf
- INF EmbeddedPkg/ResetRuntimeDxe/ResetRuntimeDxe.inf
- INF
EmbeddedPkg/RealTimeClockRuntimeDxe/RealTimeClockRuntimeDxe.inf
- INF EmbeddedPkg/MetronomeDxe/MetronomeDxe.inf
- INF EmbeddedPkg/SimpleTextInOutSerial/SimpleTextInOutSerial.inf
- #
- # I2C
- #
- INF OpenPlatformPkg/Chips/Nxp/QoriqLs/I2c/I2cDxe.inf
- #
- # FAT filesystem + GPT/MBR partitioning
- #
- INF
MdeModulePkg/Universal/Disk/UnicodeCollation/EnglishDxe/EnglishDxe.inf
- #
- # UEFI application (Shell Embedded Boot Loader)
- #
- INF ShellPkg/Application/Shell/Shell.inf
- #INF ShellBinPkg/UefiShell/UefiShell.inf
- #
- # Bds
- #
- INF MdeModulePkg/Universal/DevicePathDxe/DevicePathDxe.inf
- INF MdeModulePkg/Universal/DisplayEngineDxe/DisplayEngineDxe.inf
- INF MdeModulePkg/Universal/SetupBrowserDxe/SetupBrowserDxe.inf
- INF MdeModulePkg/Universal/BdsDxe/BdsDxe.inf
- INF MdeModulePkg/Application/UiApp/UiApp.inf
- #
- # FDT installation
- #
- # The UEFI driver is at the end of the list of the driver to be
dispatched
- # after the device drivers (eg: Ethernet) to ensure we have
support for them.
+[FV.FVNOR_COMPACT] +FvAlignment = 8 +ERASE_POLARITY = 1 +MEMORY_MAPPED = TRUE +STICKY_WRITE = TRUE +LOCK_CAP = TRUE +LOCK_STATUS = TRUE +WRITE_DISABLED_CAP = TRUE +WRITE_ENABLED_CAP = TRUE +WRITE_STATUS = TRUE +WRITE_LOCK_CAP = TRUE +WRITE_LOCK_STATUS = TRUE +READ_DISABLED_CAP = TRUE +READ_ENABLED_CAP = TRUE +READ_STATUS = TRUE +READ_LOCK_CAP = TRUE +READ_LOCK_STATUS = TRUE
- INF
OpenPlatformPkg/Chips/Nxp/QoriqLs/Library/PrePiNor/PrePiNor.inf
+[FV.FVMAIN_COMPACT] +FvAlignment = 8 +ERASE_POLARITY = 1 +MEMORY_MAPPED = TRUE +STICKY_WRITE = TRUE +LOCK_CAP = TRUE +LOCK_STATUS = TRUE +WRITE_DISABLED_CAP = TRUE +WRITE_ENABLED_CAP = TRUE +WRITE_STATUS = TRUE +WRITE_LOCK_CAP = TRUE +WRITE_LOCK_STATUS = TRUE +READ_DISABLED_CAP = TRUE +READ_ENABLED_CAP = TRUE +READ_STATUS = TRUE +READ_LOCK_CAP = TRUE +READ_LOCK_STATUS = TRUE
- INF ArmPlatformPkg/PrePi/PeiUniCore.inf
- FILE FV_IMAGE = 9E21FD93-9C72-4c15-8C4B-E77F1DB2D792 {
- SECTION GUIDED EE4E5898-3914-4259-9D6E-DC7BD79403CF
PROCESSING_REQUIRED = TRUE {
SECTION FV_IMAGE = FVMAIN
- }
- }
+###################################################################### ##########
+# +# Rules are use with the [FV] section's module INF type to define +# how an FFS file is created for a given INF file. The following
Rule are the default
+# rules for the different module type. User can add the customized
rules to define the
+# content of the FFS file. +#
+###################################################################### ##########
+###################################################################### ######
+# Example of a DXE_DRIVER FFS file with a Checksum encapsulation
section #
+###################################################################### ######
+# +#[Rule.Common.DXE_DRIVER] +# FILE DRIVER = $(NAMED_GUID) { +# DXE_DEPEX DXE_DEPEX Optional
$(INF_OUTPUT)/$(MODULE_NAME).depex
+# COMPRESS PI_STD { +# GUIDED { +# PE32 PE32
$(INF_OUTPUT)/$(MODULE_NAME).efi
+# UI STRING="$(MODULE_NAME)" Optional +# VERSION STRING="$(INF_VERSION)" Optional
BUILD_NUM=$(BUILD_NUMBER)
+# } +# } +# } +#
+###################################################################### ######
+[Rule.Common.SEC]
- FILE SEC = $(NAMED_GUID) RELOCS_STRIPPED {
- TE TE Align = 32
$(INF_OUTPUT)/$(MODULE_NAME).efi
- }
+[Rule.Common.PEI_CORE]
- FILE PEI_CORE = $(NAMED_GUID) {
- TE TE
$(INF_OUTPUT)/$(MODULE_NAME).efi
- UI STRING ="$(MODULE_NAME)" Optional
- }
+[Rule.Common.PEIM]
- FILE PEIM = $(NAMED_GUID) {
PEI_DEPEX PEI_DEPEX Optional
$(INF_OUTPUT)/$(MODULE_NAME).depex
PE32 PE32
$(INF_OUTPUT)/$(MODULE_NAME).efi
UI STRING="$(MODULE_NAME)" Optional
- }
+[Rule.Common.PEIM.TIANOCOMPRESSED]
- FILE PEIM = $(NAMED_GUID) DEBUG_MYTOOLS_IA32 {
- PEI_DEPEX PEI_DEPEX Optional
$(INF_OUTPUT)/$(MODULE_NAME).depex
- GUIDED A31280AD-481E-41B6-95E8-127F4C984779 PROCESSING_REQUIRED
= TRUE {
PE32 PE32
$(INF_OUTPUT)/$(MODULE_NAME).efi
UI STRING="$(MODULE_NAME)" Optional
- }
- }
+[Rule.Common.DXE_CORE]
- FILE DXE_CORE = $(NAMED_GUID) {
- PE32 PE32
$(INF_OUTPUT)/$(MODULE_NAME).efi
- UI STRING="$(MODULE_NAME)" Optional
- }
+[Rule.Common.UEFI_DRIVER]
- FILE DRIVER = $(NAMED_GUID) {
- DXE_DEPEX DXE_DEPEX Optional
$(INF_OUTPUT)/$(MODULE_NAME).depex
- PE32 PE32
$(INF_OUTPUT)/$(MODULE_NAME).efi
- UI STRING="$(MODULE_NAME)" Optional
- }
+[Rule.Common.DXE_DRIVER]
- FILE DRIVER = $(NAMED_GUID) {
- DXE_DEPEX DXE_DEPEX Optional
$(INF_OUTPUT)/$(MODULE_NAME).depex
- PE32 PE32
$(INF_OUTPUT)/$(MODULE_NAME).efi
- UI STRING="$(MODULE_NAME)" Optional
- }
+[Rule.Common.DXE_RUNTIME_DRIVER]
- FILE DRIVER = $(NAMED_GUID) {
- DXE_DEPEX DXE_DEPEX Optional
$(INF_OUTPUT)/$(MODULE_NAME).depex
- PE32 PE32
$(INF_OUTPUT)/$(MODULE_NAME).efi
- UI STRING="$(MODULE_NAME)" Optional
- }
+[Rule.Common.UEFI_APPLICATION]
- FILE APPLICATION = $(NAMED_GUID) {
- UI STRING ="$(MODULE_NAME)" Optional
- PE32 PE32
$(INF_OUTPUT)/$(MODULE_NAME).efi
- }
+[Rule.Common.UEFI_DRIVER.BINARY]
- FILE DRIVER = $(NAMED_GUID) {
- DXE_DEPEX DXE_DEPEX Optional |.depex
- PE32 PE32 |.efi
- UI STRING="$(MODULE_NAME)" Optional
- VERSION STRING="$(INF_VERSION)" Optional
BUILD_NUM=$(BUILD_NUMBER)
- }
+[Rule.Common.UEFI_APPLICATION.BINARY]
- FILE APPLICATION = $(NAMED_GUID) {
- PE32 PE32 |.efi
- UI STRING="$(MODULE_NAME)" Optional
- VERSION STRING="$(INF_VERSION)" Optional
BUILD_NUM=$(BUILD_NUMBER)
- }
diff --git a/Platforms/Nxp/LS1043aRdb/build.sh
b/Platforms/Nxp/LS1043aRdb/build.sh
new file mode 100755 index 0000000..4012a78 --- /dev/null +++ b/Platforms/Nxp/LS1043aRdb/build.sh
I would very much prefer not to merge these last two files. But I would be happy to add an entry for LS1043A to the default config in my uefi-tools set of helper scripts.
Ok, so I will send a patch to update the default config in uefi-tools.
Regards, Bhupesh
/ Leif
@@ -0,0 +1,72 @@ +#!/bin/bash
+# UEFI build script for LS1043A SoC from Freescale +# +# Copyright (c) 2016, Freescale Semiconductor, Inc. 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.
+#
+print_usage_banner() +{
- echo "This shell script expects:"
- echo " Arg 1 (mandatory): Build candidate (can be RELEASE or
DEBUG). By
default we build the RELEASE candidate."
- echo " Arg 2 (optional): clean - To do a 'make clean'
operation."
+}
+# Actual stuff starts from here +echo ".........................................." +echo "Welcome to LS1043A UEFI Build environment" +echo ".........................................."
+# Check for input arguments +if [[ $1 == "" ]]; then
- echo "Error ! No build target specified."
- print_usage_banner
- exit
+fi
+# Check for input arguments +if [[ $1 != "RELEASE" ]]; then
- if [[ $1 != "DEBUG" ]]; then
echo "Error ! Incorrect build target specified."
print_usage_banner
exit
- fi
+fi
+if [[ $2 == "clean" ]]; then
- echo "Cleaning up the build directory
'../../../../Build/LS1043aRdb/'.."
- rm -rf ../../../../Build/LS1043aRdb/*
- exit
+fi
+# Clean-up +set -e +shopt -s nocasematch
+# +# Setup workspace now +# +echo Initializing workspace +cd ../../../../
+# Use the BaseTools in edk2 +export EDK_TOOLS_PATH=`pwd`/BaseTools +source edksetup.sh BaseTools
+# Global Defaults +ARCH=AARCH64 +TARGET_TOOLS=GCC49
+build -p
"$WORKSPACE/OpenPlatformPkg/Platforms/Nxp/LS1043aRdb/LS1043aRdbPkg.dsc" -a $ARCH -t $TARGET_TOOLS -b $1
+cat $WORKSPACE/Build/LS1043aRdb/$1_GCC49/FV/LS1043ARDB_EFI.fd >>
$WORKSPACE/Build/LS1043aRdb/$1_GCC49/FV/LS1043ARDBPI_EFI.fd
+mv $WORKSPACE/Build/LS1043aRdb/$1_GCC49/FV/LS1043ARDBPI_EFI.fd
$WORKSPACE/Build/LS1043aRdb/$1_GCC49/FV/LS1043ARDB_EFI.fd
diff --git a/Platforms/Nxp/LS1043aRdb/ls1043a_env.cshrc
b/Platforms/Nxp/LS1043aRdb/ls1043a_env.cshrc
new file mode 100644 index 0000000..63d702e --- /dev/null +++ b/Platforms/Nxp/LS1043aRdb/ls1043a_env.cshrc @@ -0,0 +1,2 @@ +export GCC49_AARCH64_PREFIX='aarch64-linux-gnu-'
+unset ARCH
1.9.1