[edk2-devel] [PATCH v1 05/11] ArmPlatformPkg: Dynamic flash variable base
Philippe Mathieu-Daudé
philmd at redhat.com
Wed May 27 11:48:11 UTC 2020
On 5/14/20 10:40 AM, Sami Mujawar wrote:
> Some virtual machine managers like kvmtool can relocate
> the devices in the system memory map. The information
> about the devices location in memory is described in the
> device tree. Therefore, the CFI memory region and the
> associated Non volatile storage variables need to be
> adjusted accordingly.
>
> To support such use cases the non-volatile storage
> variable base PCD PcdFlashNvStorageVariableBase has
> been defined as a dynamic PCD.
>
> The NOR flash driver was using the Flash non-volatile
> storage variable base PCD as a fixed PCD, thereby
> preventing runtime resolution of the variable base
> address.
>
> Therefore update the NOR flash driver to load the
> PCD using PcdGet32 instead of FixedPcdGet32.
>
> Signed-off-by: Sami Mujawar <sami.mujawar at arm.com>
> ---
> ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashFvbDxe.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashFvbDxe.c b/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashFvbDxe.c
> index e248fdf6db94191648b5d33bf1a9263f446ee141..9cdd85096a463f69b3b864cecdeaf247e65f4f73 100644
> --- a/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashFvbDxe.c
> +++ b/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashFvbDxe.c
> @@ -1,6 +1,6 @@
> /*++ @file NorFlashFvbDxe.c
>
> - Copyright (c) 2011 - 2014, ARM Ltd. All rights reserved.<BR>
> + Copyright (c) 2011 - 2020, ARM Ltd. All rights reserved.<BR>
>
> SPDX-License-Identifier: BSD-2-Clause-Patent
>
> @@ -736,7 +736,7 @@ NorFlashFvbInitialize (
> EFI_MEMORY_UC | EFI_MEMORY_RUNTIME);
> ASSERT_EFI_ERROR (Status);
>
> - mFlashNvStorageVariableBase = FixedPcdGet32 (PcdFlashNvStorageVariableBase);
> + mFlashNvStorageVariableBase = PcdGet32 (PcdFlashNvStorageVariableBase);
>
> // Set the index of the first LBA for the FVB
> Instance->StartLba = (PcdGet32 (PcdFlashNvStorageVariableBase) - Instance->RegionBaseAddress) / Instance->Media.BlockSize;
>
Reviewed-by: Philippe Mathieu-Daude <philmd at redhat.com>
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#60337): https://edk2.groups.io/g/devel/message/60337
Mute This Topic: https://groups.io/mt/74200906/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-
More information about the edk2-devel-archive
mailing list