This implements a MemoryInitPeiLib instance that differs from the stock ArmPlatformPkg version only in the fact that it does not remove the memory used by the flash device (FD). The reason is that, when using PrePi, the DXE core is started immediately and never returns so there is no reason to preserve any of the memory that the flash device occupied originally, and it is preferable to release is so that the OS loader can reuse it. This is especially important for the relocatable PrePi configuration, which is aimed at being launched from a boot loader that itself adheres to the Linux arm64 boot protocol. Contributed-under: TianoCore Contribution Agreement 1.0 Acked-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Olivier Martin <olivier.martn@arm.com> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Signed-off-by: Laszlo Ersek <lersek@redhat.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16962 6f19259b-4bc3-4df7-8a09-765794883524
67 lines
2.1 KiB
INI
67 lines
2.1 KiB
INI
#/** @file
|
|
#
|
|
# Copyright (c) 2011-2014, ARM Ltd. All rights reserved.<BR>
|
|
# Copyright (c) 2014, Linaro Ltd. All rights reserved.<BR>
|
|
# 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]
|
|
INF_VERSION = 0x00010005
|
|
BASE_NAME = ArmVirtMemoryInitPeiLib
|
|
FILE_GUID = 021b6156-3cc8-4e99-85ee-13d8a871edf2
|
|
MODULE_TYPE = SEC
|
|
VERSION_STRING = 1.0
|
|
LIBRARY_CLASS = MemoryInitPeiLib
|
|
|
|
[Sources]
|
|
ArmVirtualizationMemoryInitPeiLib.c
|
|
|
|
[Packages]
|
|
MdePkg/MdePkg.dec
|
|
MdeModulePkg/MdeModulePkg.dec
|
|
EmbeddedPkg/EmbeddedPkg.dec
|
|
ArmPkg/ArmPkg.dec
|
|
ArmPlatformPkg/ArmPlatformPkg.dec
|
|
|
|
[LibraryClasses]
|
|
DebugLib
|
|
HobLib
|
|
ArmLib
|
|
ArmPlatformLib
|
|
|
|
[Guids]
|
|
gEfiMemoryTypeInformationGuid
|
|
|
|
[FeaturePcd]
|
|
gEmbeddedTokenSpaceGuid.PcdPrePiProduceMemoryTypeInformationHob
|
|
|
|
[FixedPcd]
|
|
gArmTokenSpaceGuid.PcdFdSize
|
|
|
|
gArmPlatformTokenSpaceGuid.PcdSystemMemoryUefiRegionSize
|
|
|
|
gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIReclaimMemory
|
|
gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiACPIMemoryNVS
|
|
gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiReservedMemoryType
|
|
gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesData
|
|
gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiRuntimeServicesCode
|
|
gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesCode
|
|
gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiBootServicesData
|
|
gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderCode
|
|
gEmbeddedTokenSpaceGuid.PcdMemoryTypeEfiLoaderData
|
|
|
|
[Pcd]
|
|
gArmTokenSpaceGuid.PcdSystemMemoryBase
|
|
gArmTokenSpaceGuid.PcdSystemMemorySize
|
|
gArmTokenSpaceGuid.PcdFdBaseAddress
|
|
|
|
[Depex]
|
|
TRUE
|