From 8d0fe26cbf66739ba80f7d2fc6acb683cecbf68f Mon Sep 17 00:00:00 2001 From: oliviermartin Date: Tue, 1 Nov 2011 23:36:59 +0000 Subject: [PATCH] ArmPlatformPkg: Remove ArmPlatformBootRemapping() function from the ArmPlatformLib Memory map remapping is a platform specific feature only enabled by some platforms. Instead of keeping this function empty for most platforms, the function has been removed. This feature can easily fit in any other ArmPlatformLib function. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12632 6f19259b-4bc3-4df7-8a09-765794883524 --- .../ArmRealViewEbLibRTSM/ArmRealViewEb.c | 19 ++--------- .../Library/ArmVExpressLibCTA9x4/CTA9x4.c | 34 ++++++------------- .../Library/ArmVExpressLibRTSM/RTSM.c | 19 ++--------- .../Include/Library/ArmPlatformLib.h | 12 ------- .../ArmPlatformLibNull/ArmPlatformLibNull.c | 15 -------- ArmPlatformPkg/Sec/Sec.c | 4 --- 6 files changed, 16 insertions(+), 87 deletions(-) diff --git a/ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEb.c b/ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEb.c index ba90e19119..cb92bf00a2 100644 --- a/ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEb.c +++ b/ArmPlatformPkg/ArmRealViewEbPkg/Library/ArmRealViewEbLibRTSM/ArmRealViewEb.c @@ -47,22 +47,6 @@ ARM_CORE_INFO mRealViewEbMpCoreInfoTable[] = { } }; -/** - Remap the memory at 0x0 - - Some platform requires or gives the ability to remap the memory at the address 0x0. - This function can do nothing if this feature is not relevant to your platform. - -**/ -VOID -ArmPlatformBootRemapping ( - VOID - ) -{ - // Disable memory remapping and return to normal mapping - MmioOr32 (ARM_EB_SYSCTRL, BIT8); //EB_SP810_CTRL_BASE -} - /** Return the current Boot Mode @@ -89,6 +73,9 @@ ArmPlatformNormalInitialize ( VOID ) { + // Disable memory remapping and return to normal mapping + MmioOr32 (ARM_EB_SYSCTRL, BIT8); //EB_SP810_CTRL_BASE + // Configure periodic timer (TIMER0) for 1MHz operation MmioOr32 (SP810_CTRL_BASE + SP810_SYS_CTRL_REG, SP810_SYS_CTRL_TIMER0_TIMCLK); // Configure 1MHz clock diff --git a/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibCTA9x4/CTA9x4.c b/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibCTA9x4/CTA9x4.c index 67731ad4b4..f887796005 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibCTA9x4/CTA9x4.c +++ b/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibCTA9x4/CTA9x4.c @@ -125,29 +125,6 @@ ArmPlatformGetBootMode ( } } -/** - Remap the memory at 0x0 - - Some platform requires or gives the ability to remap the memory at the address 0x0. - This function can do nothing if this feature is not relevant to your platform. - -**/ -VOID -ArmPlatformBootRemapping ( - VOID - ) -{ - UINT32 Value; - - if (FeaturePcdGet(PcdNorFlashRemapping)) { - SerialPrint ("Secure ROM at 0x0\n\r"); - } else { - Value = MmioRead32(ARM_VE_SYS_CFGRW1_REG); //Scc - CFGRW1 - // Remap the DRAM to 0x0 - MmioWrite32(ARM_VE_SYS_CFGRW1_REG, (Value & 0x0FFFFFFF) | ARM_VE_CFGRW1_REMAP_DRAM); - } -} - /** Initialize controllers that must setup in the normal world @@ -181,6 +158,17 @@ ArmPlatformInitializeSystemMemory ( VOID ) { + UINT32 Value; + + // Memory Map remapping + if (FeaturePcdGet(PcdNorFlashRemapping)) { + SerialPrint ("Secure ROM at 0x0\n\r"); + } else { + Value = MmioRead32(ARM_VE_SYS_CFGRW1_REG); //Scc - CFGRW1 + // Remap the DRAM to 0x0 + MmioWrite32(ARM_VE_SYS_CFGRW1_REG, (Value & 0x0FFFFFFF) | ARM_VE_CFGRW1_REMAP_DRAM); + } + PL341DmcInit(ARM_VE_DMC_BASE, &DDRTimings); PL301AxiInit(ARM_VE_FAXI_BASE); } diff --git a/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibRTSM/RTSM.c b/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibRTSM/RTSM.c index a8674acf7c..8aeedda929 100644 --- a/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibRTSM/RTSM.c +++ b/ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibRTSM/RTSM.c @@ -87,22 +87,6 @@ ArmPlatformGetBootMode ( return BOOT_WITH_FULL_CONFIGURATION; } -/** - Remap the memory at 0x0 - - Some platform requires or gives the ability to remap the memory at the address 0x0. - This function can do nothing if this feature is not relevant to your platform. - -**/ -VOID -ArmPlatformBootRemapping ( - VOID - ) -{ - // Disable memory remapping and return to normal mapping - MmioOr32 (SP810_CTRL_BASE, BIT8); -} - /** Initialize controllers that must setup in the normal world @@ -115,7 +99,8 @@ ArmPlatformNormalInitialize ( VOID ) { - // Nothing to do here + // Disable memory remapping and return to normal mapping + MmioOr32 (SP810_CTRL_BASE, BIT8); } /** diff --git a/ArmPlatformPkg/Include/Library/ArmPlatformLib.h b/ArmPlatformPkg/Include/Library/ArmPlatformLib.h index 4362760c73..44a9884b88 100644 --- a/ArmPlatformPkg/Include/Library/ArmPlatformLib.h +++ b/ArmPlatformPkg/Include/Library/ArmPlatformLib.h @@ -131,18 +131,6 @@ ArmPlatformInitializeSystemMemory ( VOID ); -/** - Remap the memory at 0x0 - - Some platform requires or gives the ability to remap the memory at the address 0x0. - This function can do nothing if this feature is not relevant to your platform. - -**/ -VOID -ArmPlatformBootRemapping ( - VOID - ); - /** Initialize the Secure peripherals and memory regions diff --git a/ArmPlatformPkg/Library/ArmPlatformLibNull/ArmPlatformLibNull.c b/ArmPlatformPkg/Library/ArmPlatformLibNull/ArmPlatformLibNull.c index 3467016e4a..c3d72483a8 100644 --- a/ArmPlatformPkg/Library/ArmPlatformLibNull/ArmPlatformLibNull.c +++ b/ArmPlatformPkg/Library/ArmPlatformLibNull/ArmPlatformLibNull.c @@ -71,21 +71,6 @@ TimerConstructor ( return EFI_SUCCESS; } -/** - Remap the memory at 0x0 - - Some platform requires or gives the ability to remap the memory at the address 0x0. - This function can do nothing if this feature is not relevant to your platform. - -**/ -VOID -ArmPlatformBootRemapping ( - VOID - ) -{ - // Disable memory remapping and return to normal mapping -} - /** Return the current Boot Mode diff --git a/ArmPlatformPkg/Sec/Sec.c b/ArmPlatformPkg/Sec/Sec.c index 241ad7cb16..a40f43683a 100644 --- a/ArmPlatformPkg/Sec/Sec.c +++ b/ArmPlatformPkg/Sec/Sec.c @@ -17,7 +17,6 @@ #include #include #include -#include #include #include @@ -97,9 +96,6 @@ CEntryPoint ( // Initialize system memory (DRAM) ArmPlatformInitializeSystemMemory (); } - - // Some platform can change their physical memory mapping - ArmPlatformBootRemapping (); } // Test if Trustzone is supported on this platform