#\r
-# Copyright (c) 2011-2013, ARM Limited. All rights reserved.\r
+# Copyright (c) 2011-2014, ARM Limited. All rights reserved.\r
#\r
# This program and the accompanying materials\r
# are licensed and made available under the terms and conditions of the BSD License\r
SKUID_IDENTIFIER = DEFAULT\r
FLASH_DEFINITION = ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-FVP-AArch64.fdf\r
\r
+!ifndef ARM_FVP_RUN_NORFLASH\r
+ DEFINE EDK2_SKIP_PEICORE=1\r
+!endif\r
+\r
+\r
!include ArmPlatformPkg/ArmVExpressPkg/ArmVExpress.dsc.inc\r
\r
[LibraryClasses.common]\r
gArmPlatformTokenSpaceGuid.PcdFirmwareVendor|"ARM Fixed Virtual Platform"\r
gEmbeddedTokenSpaceGuid.PcdEmbeddedPrompt|"ARM-FVP"\r
\r
+!ifndef ARM_FOUNDATION_FVP\r
# Up to 8 cores on Base models. This works fine if model happens to have less.\r
gArmPlatformTokenSpaceGuid.PcdCoreCount|8\r
+ gArmPlatformTokenSpaceGuid.PcdClusterCount|2\r
+!else\r
+ # Up to 4 cores on Foundation models. This works fine if model happens to have less.\r
+ gArmPlatformTokenSpaceGuid.PcdCoreCount|4\r
+!endif\r
\r
#\r
# NV Storage PCDs. Use base of 0x0C000000 for NOR1\r
# Non-Trusted SRAM\r
gArmPlatformTokenSpaceGuid.PcdCPUCoresStackBase|0x2E000000\r
gArmPlatformTokenSpaceGuid.PcdCPUCorePrimaryStackSize|0x4000\r
- gArmPlatformTokenSpaceGuid.PcdCPUCoreSecondaryStackSize|0x800\r
+ gArmPlatformTokenSpaceGuid.PcdCPUCoreSecondaryStackSize|0x1000\r
\r
- # System Memory (2GB)\r
+ # System Memory (2GB - 16MB of Trusted DRAM at the top of the 32bit address space)\r
gArmTokenSpaceGuid.PcdSystemMemoryBase|0x80000000\r
- gArmTokenSpaceGuid.PcdSystemMemorySize|0x80000000\r
+ gArmTokenSpaceGuid.PcdSystemMemorySize|0x7F000000\r
\r
# Size of the region used by UEFI in permanent memory (Reserved 64MB)\r
gArmPlatformTokenSpaceGuid.PcdSystemMemoryUefiRegionSize|0x04000000\r
#\r
# PEI Phase modules\r
#\r
+!ifdef EDK2_SKIP_PEICORE\r
+ # UEFI is placed in RAM by bootloader\r
+ ArmPlatformPkg/PrePi/PeiMPCore.inf {\r
+ <LibraryClasses>\r
+ ArmLib|ArmPkg/Library/ArmLib/AArch64/AArch64Lib.inf\r
+ ArmPlatformLib|ArmPlatformPkg/ArmVExpressPkg/Library/ArmVExpressLibRTSM/ArmVExpressLib.inf\r
+ ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/PrePi/PrePiArmPlatformGlobalVariableLib.inf\r
+ }\r
+!else\r
+ # UEFI lives in FLASH and copies itself to RAM\r
ArmPlatformPkg/PrePeiCore/PrePeiCoreMPCore.inf {\r
<LibraryClasses>\r
ArmPlatformGlobalVariableLib|ArmPlatformPkg/Library/ArmPlatformGlobalVariableLib/Pei/PeiArmPlatformGlobalVariableLib.inf\r
<LibraryClasses>\r
NULL|IntelFrameworkModulePkg/Library/LzmaCustomDecompressLib/LzmaCustomDecompressLib.inf\r
}\r
+!endif\r
\r
#\r
# DXE\r
#\r
# Platform Driver\r
#\r
- ArmPlatformPkg/ArmVExpressPkg/ArmFvpDxe/ArmFvpDxe.inf\r
+ ArmPlatformPkg/ArmVExpressPkg/ArmVExpressDxe/ArmFvpDxe.inf\r
OvmfPkg/VirtioBlkDxe/VirtioBlk.inf\r
\r
#\r