From bf72cf3381c20703042c5a574ec4ba689abd4430 Mon Sep 17 00:00:00 2001 From: oliviermartin Date: Fri, 1 Jul 2011 14:21:12 +0000 Subject: [PATCH 1/1] ArmPlatformPkg: Move PcdStandalone from Feature PCD to Fixed PCD Feature PCDs cannot be used in assembly files. The PcdStandalone PCD is needed in one of the assembly file of the ArmPlatformPkg/PrePi module. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11952 6f19259b-4bc3-4df7-8a09-765794883524 --- ArmPlatformPkg/ArmPlatformPkg.dec | 2 +- ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-A8.dsc | 4 ++-- .../ArmRealViewEbPkg/ArmRealViewEb-RTSM-A9x2.dsc | 3 +-- .../Library/ArmRealViewEbLibRTSM/ArmRealViewEbLib.inf | 2 +- .../Library/ArmRealViewEbLibRTSM/ArmRealViewEbSecLib.inf | 2 +- ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA9x4.dsc | 8 ++++---- .../Library/ArmVExpressLibCTA9x4/ArmVExpressLib.inf | 3 ++- .../Library/ArmVExpressLibCTA9x4/ArmVExpressSecLib.inf | 3 ++- ArmPlatformPkg/MemoryInitPei/MemoryInitPeim.c | 4 ++-- ArmPlatformPkg/MemoryInitPei/MemoryInitPeim.inf | 3 ++- ArmPlatformPkg/PrePeiCore/MainMPCore.c | 2 +- ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf | 5 ++--- ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf | 5 ++--- ArmPlatformPkg/Sec/Sec.c | 4 ++-- ArmPlatformPkg/Sec/Sec.inf | 2 +- 15 files changed, 26 insertions(+), 26 deletions(-) diff --git a/ArmPlatformPkg/ArmPlatformPkg.dec b/ArmPlatformPkg/ArmPlatformPkg.dec index 93d337eb0e..2a5c15e4b5 100644 --- a/ArmPlatformPkg/ArmPlatformPkg.dec +++ b/ArmPlatformPkg/ArmPlatformPkg.dec @@ -39,13 +39,13 @@ gVariableRuntimeDxeFileGuid = { 0xcbd2e4d5, 0x7068, 0x4ff5, { 0xb4, 0x62, 0x98, 0x22, 0xb4, 0xad, 0x8d, 0x60 } } [PcdsFeatureFlag.common] - gArmPlatformTokenSpaceGuid.PcdStandalone|FALSE|BOOLEAN|0x00000001 # Set this PCD to TRUE to map NORFlash at 0x0. FALSE means the DRAM is mapped at 0x0. gArmPlatformTokenSpaceGuid.PcdNorFlashRemapping|FALSE|BOOLEAN|0x00000012 [PcdsFixedAtBuild.common] # These PCDs should be FeaturePcds. But we used these PCDs as an '#if' in an ASM file. # Using a FeaturePcd make a '(BOOLEAN) casting for its value which is not understood by the preprocessor. + gArmPlatformTokenSpaceGuid.PcdStandalone|0|UINT32|0x00000001 gArmPlatformTokenSpaceGuid.PcdMPCoreSupport|0|UINT32|0x00000003 # Stack for CPU Cores in Secure Mode diff --git a/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-A8.dsc b/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-A8.dsc index 6fbea18b29..ba2681c886 100644 --- a/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-A8.dsc +++ b/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-A8.dsc @@ -248,8 +248,6 @@ gArmTokenSpaceGuid.PcdCpuDxeProduceDebugSupport|FALSE gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport|TRUE - - gArmPlatformTokenSpaceGuid.PcdStandalone|TRUE !if $(EDK2_SKIP_PEICORE) == 1 gArmTokenSpaceGuid.PcdSkipPeiCore|TRUE @@ -328,6 +326,8 @@ # gArmTokenSpaceGuid.PcdCpuVectorBaseAddress|0x00000000 + gArmPlatformTokenSpaceGuid.PcdStandalone|1 + # Stack for CPU Cores in Secure Mode gArmPlatformTokenSpaceGuid.PcdCPUCoresSecStackBase|0x4B000000 # Top of SEC Stack for Secure World gArmPlatformTokenSpaceGuid.PcdCPUCoreSecStackSize|0x2000 # Size of SEC Stack for Secure World diff --git a/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-A9x2.dsc b/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-A9x2.dsc index dcd75e000f..9ff68659ce 100644 --- a/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-A9x2.dsc +++ b/ArmPlatformPkg/ArmRealViewEbPkg/ArmRealViewEb-RTSM-A9x2.dsc @@ -250,8 +250,6 @@ gArmTokenSpaceGuid.PcdCpuDxeProduceDebugSupport|FALSE gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport|TRUE - - gArmPlatformTokenSpaceGuid.PcdStandalone|TRUE !if $(EDK2_SKIP_PEICORE) == 1 gArmTokenSpaceGuid.PcdSkipPeiCore|TRUE @@ -330,6 +328,7 @@ # gArmTokenSpaceGuid.PcdCpuVectorBaseAddress|0x00000000 + gArmPlatformTokenSpaceGuid.PcdStandalone|1 gArmPlatformTokenSpaceGuid.PcdMPCoreSupport|1 # Stacks for MPCores in Secure World diff --git a/ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEbLib.inf b/ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEbLib.inf index c3308b4a0b..e375709a0f 100644 --- a/ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEbLib.inf +++ b/ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEbLib.inf @@ -41,6 +41,6 @@ [FeaturePcd] gEmbeddedTokenSpaceGuid.PcdCacheEnable - gArmPlatformTokenSpaceGuid.PcdStandalone [FixedPcd] + gArmPlatformTokenSpaceGuid.PcdStandalone diff --git a/ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEbSecLib.inf b/ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEbSecLib.inf index fe05824bca..dc4d560b14 100644 --- a/ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEbSecLib.inf +++ b/ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEbSecLib.inf @@ -39,6 +39,6 @@ [FeaturePcd] gEmbeddedTokenSpaceGuid.PcdCacheEnable - gArmPlatformTokenSpaceGuid.PcdStandalone [FixedPcd] + gArmPlatformTokenSpaceGuid.PcdStandalone diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA9x4.dsc b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA9x4.dsc index 9a1be94ebb..82089985b1 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA9x4.dsc +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-CTA9x4.dsc @@ -272,10 +272,6 @@ gEfiMdeModulePkgTokenSpaceGuid.PcdTurnOffUsbLegacySupport|TRUE -!if $(EDK2_ARMVE_STANDALONE) == 1 - gArmPlatformTokenSpaceGuid.PcdStandalone|TRUE -!endif - !if $(EDK2_SKIP_PEICORE) == 1 gArmTokenSpaceGuid.PcdSkipPeiCore|TRUE !endif @@ -365,6 +361,10 @@ gArmPlatformTokenSpaceGuid.PcdMPCoreSupport|1 gArmTokenSpaceGuid.PcdVFPEnabled|1 +!if $(EDK2_ARMVE_STANDALONE) == 1 + gArmPlatformTokenSpaceGuid.PcdStandalone|1 +!endif + # Stacks for MPCores in Secure World gArmPlatformTokenSpaceGuid.PcdCPUCoresSecStackBase|0x49E00000 # Top of SEC Stack for Secure World gArmPlatformTokenSpaceGuid.PcdCPUCoreSecStackSize|0x2000 # Stack for each of the 4 CPU cores diff --git a/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibCTA9x4/ArmVExpressLib.inf b/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibCTA9x4/ArmVExpressLib.inf index e59a994747..d78f631829 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibCTA9x4/ArmVExpressLib.inf +++ b/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibCTA9x4/ArmVExpressLib.inf @@ -45,8 +45,9 @@ [FeaturePcd] gEmbeddedTokenSpaceGuid.PcdCacheEnable - gArmPlatformTokenSpaceGuid.PcdStandalone gArmPlatformTokenSpaceGuid.PcdNorFlashRemapping [FixedPcd] + gArmPlatformTokenSpaceGuid.PcdStandalone + gArmTokenSpaceGuid.PcdL2x0ControllerBase diff --git a/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibCTA9x4/ArmVExpressSecLib.inf b/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibCTA9x4/ArmVExpressSecLib.inf index 45332256ed..0a1054a28b 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibCTA9x4/ArmVExpressSecLib.inf +++ b/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibCTA9x4/ArmVExpressSecLib.inf @@ -47,8 +47,9 @@ [FeaturePcd] gEmbeddedTokenSpaceGuid.PcdCacheEnable - gArmPlatformTokenSpaceGuid.PcdStandalone gArmPlatformTokenSpaceGuid.PcdNorFlashRemapping [FixedPcd] + gArmPlatformTokenSpaceGuid.PcdStandalone + gArmTokenSpaceGuid.PcdL2x0ControllerBase diff --git a/ArmPlatformPkg/MemoryInitPei/MemoryInitPeim.c b/ArmPlatformPkg/MemoryInitPei/MemoryInitPeim.c index 3a26c35998..d745357164 100755 --- a/ArmPlatformPkg/MemoryInitPei/MemoryInitPeim.c +++ b/ArmPlatformPkg/MemoryInitPei/MemoryInitPeim.c @@ -112,7 +112,7 @@ InitializeMemory ( // // Initialize the System Memory (DRAM) // - if (FeaturePcdGet(PcdStandalone)) { + if (PcdGet32 (PcdStandalone)) { // In case of a standalone version, the DRAM is already initialized ArmPlatformInitializeSystemMemory(); } @@ -120,7 +120,7 @@ InitializeMemory ( // // Declare the UEFI memory to PEI // - if (FeaturePcdGet(PcdStandalone)) { + if (PcdGet32 (PcdStandalone)) { // In case of standalone UEFI, we set the UEFI memory region at the top of the DRAM UefiMemoryBase = SystemMemoryTop - FixedPcdGet32 (PcdSystemMemoryUefiRegionSize); } else { diff --git a/ArmPlatformPkg/MemoryInitPei/MemoryInitPeim.inf b/ArmPlatformPkg/MemoryInitPei/MemoryInitPeim.inf index c0971b30f4..0d578648a7 100755 --- a/ArmPlatformPkg/MemoryInitPei/MemoryInitPeim.inf +++ b/ArmPlatformPkg/MemoryInitPei/MemoryInitPeim.inf @@ -49,9 +49,10 @@ [FeaturePcd] gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob - gArmPlatformTokenSpaceGuid.PcdStandalone [FixedPcd] + gArmPlatformTokenSpaceGuid.PcdStandalone + gArmTokenSpaceGuid.PcdNormalFdBaseAddress gArmTokenSpaceGuid.PcdNormalFdSize diff --git a/ArmPlatformPkg/PrePeiCore/MainMPCore.c b/ArmPlatformPkg/PrePeiCore/MainMPCore.c index 39de31a42a..19683cbca8 100644 --- a/ArmPlatformPkg/PrePeiCore/MainMPCore.c +++ b/ArmPlatformPkg/PrePeiCore/MainMPCore.c @@ -71,7 +71,7 @@ PrimaryMain ( PL390GicEnableDistributor(PcdGet32(PcdGicDistributorBase)); // If ArmVe has not been built as Standalone then we need to wake up the secondary cores - if (FeaturePcdGet(PcdStandalone) == FALSE) { + if (!PcdGet32(PcdStandalone)) { // Sending SGI to all the Secondary CPU interfaces PL390GicSendSgiTo (PcdGet32(PcdGicDistributorBase), GIC_ICDSGIR_FILTER_EVERYONEELSE, 0x0E); } diff --git a/ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf b/ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf index 917da5dca0..730361b1b8 100644 --- a/ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf +++ b/ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf @@ -49,10 +49,9 @@ [Ppis] gEfiTemporaryRamSupportPpiGuid -[FeaturePcd] - gArmPlatformTokenSpaceGuid.PcdStandalone - [FixedPcd] + gArmPlatformTokenSpaceGuid.PcdStandalone + gArmTokenSpaceGuid.PcdNormalFvBaseAddress gArmTokenSpaceGuid.PcdNormalFvSize diff --git a/ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf b/ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf index aeaa0db8ad..52e6d959c7 100644 --- a/ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf +++ b/ArmPlatformPkg/PrePeiCore/PrePeiCoreUniCore.inf @@ -46,10 +46,9 @@ [Ppis] gEfiTemporaryRamSupportPpiGuid -[FeaturePcd] - gArmPlatformTokenSpaceGuid.PcdStandalone - [FixedPcd] + gArmPlatformTokenSpaceGuid.PcdStandalone + gArmTokenSpaceGuid.PcdNormalFvBaseAddress gArmTokenSpaceGuid.PcdNormalFvSize diff --git a/ArmPlatformPkg/Sec/Sec.c b/ArmPlatformPkg/Sec/Sec.c index 98fe51256c..faa012ab40 100644 --- a/ArmPlatformPkg/Sec/Sec.c +++ b/ArmPlatformPkg/Sec/Sec.c @@ -119,7 +119,7 @@ CEntryPoint ( // If we skip the PEI Core we could want to initialize the DRAM in the SEC phase. // If we are in standalone, we need the initialization to copy the UEFI firmware into DRAM - if (FeaturePcdGet(PcdSkipPeiCore) || !FeaturePcdGet(PcdStandalone)) { + if (FeaturePcdGet(PcdSkipPeiCore) || !PcdGet32(PcdStandalone)) { // Initialize system memory (DRAM) ArmPlatformInitializeSystemMemory (); } @@ -204,7 +204,7 @@ CEntryPoint ( } // If ArmVe has not been built as Standalone then we need to patch the DRAM to add an infinite loop at the start address - if (FeaturePcdGet(PcdStandalone) == FALSE) { + if (!PcdGet32(PcdStandalone)) { if (CoreId == ARM_PRIMARY_CORE) { UINTN* StartAddress = (UINTN*)PcdGet32(PcdNormalFvBaseAddress); diff --git a/ArmPlatformPkg/Sec/Sec.inf b/ArmPlatformPkg/Sec/Sec.inf index d36fc0c777..ad66902f93 100644 --- a/ArmPlatformPkg/Sec/Sec.inf +++ b/ArmPlatformPkg/Sec/Sec.inf @@ -45,10 +45,10 @@ SerialPortLib [FeaturePcd] - gArmPlatformTokenSpaceGuid.PcdStandalone gArmTokenSpaceGuid.PcdSkipPeiCore [FixedPcd] + gArmPlatformTokenSpaceGuid.PcdStandalone gArmTokenSpaceGuid.PcdVFPEnabled gArmPlatformTokenSpaceGuid.PcdMPCoreSupport -- 2.39.2