I just wanted to confirm that this works in the 13.12 release and in my own
builds from the latest tree.

Thanks Roy!


On 12 December 2013 22:08, Roy Franz <[email protected]> wrote:

> Change the addresses/sizes of the variable storage areas to use 256k
> blocks so UEFI is compatible with both the RTSM models and QEMU.
>
> The VExpress flash has non-uniform block sizes, with most blocks being
> 256k and the top 4 blocks being 64k.  UEFI has been using these top 64k
> blocks for persistent variable storage.  The RTSM models the non-uniform
> sizes, while QEMU only supports emulating flash with uniform block sizes
> which results in the top 256k (the 4 64k blocks) of flash being unusable
> for writing in QEMU.  The ARM UEFI NOR flash driver currently requires
> that firmware volumes start at the base of a flash region, so the
> variables are now stored at the base the region that consists of
> the 256k blocks.  It was previously at the base of the region
> of 64k blocks.
>
> Note that this change will require RTSM flash images to be updated, as
> the variable storage has moved.  Currently only the A15 model is supported
> by QEMU RTSM VExpress configurations.  This patch only changes
> the A15 configurations.
>
> Signed-off-by: Roy Franz <[email protected]>
> Contributed-under: TianoCore Contribution Agreement 1.0
> ---
>  ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15.dsc     |   12
> ++++++------
>  .../ArmVExpressPkg/ArmVExpress-RTSM-A15_MPCore.dsc         |   12
> ++++++------
>  2 files changed, 12 insertions(+), 12 deletions(-)
>
> diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15.dsc
> b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15.dsc
> index 2d12f4b..c0196d9 100644
> --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15.dsc
> +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15.dsc
> @@ -77,12 +77,12 @@
>    #
>    # NV Storage PCDs. Use base of 0x0C000000 for NOR1
>    #
> -  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase|0x0FFC0000
> -  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize|0x00010000
> -
>  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0x0FFD0000
> -
>  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize|0x00010000
> -  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0x0FFE0000
> -  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize|0x00010000
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase|0x0C000000
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize|0x00040000
> +
>  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0x0C040000
> +
>  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize|0x00040000
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0x0C080000
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize|0x00040000
>
>    gArmTokenSpaceGuid.PcdVFPEnabled|1
>
> diff --git a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15_MPCore.dsc
> b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15_MPCore.dsc
> index efd80ab..69088ff 100644
> --- a/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15_MPCore.dsc
> +++ b/ArmPlatformPkg/ArmVExpressPkg/ArmVExpress-RTSM-A15_MPCore.dsc
> @@ -79,12 +79,12 @@
>    #
>    # NV Storage PCDs. Use base of 0x0C000000 for NOR1
>    #
> -  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase|0x0FFC0000
> -  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize|0x00010000
> -
>  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0x0FFD0000
> -
>  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize|0x00010000
> -  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0x0FFE0000
> -  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize|0x00010000
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableBase|0x0C000000
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageVariableSize|0x00040000
> +
>  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingBase|0x0C040000
> +
>  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwWorkingSize|0x00040000
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareBase|0x0C080000
> +  gEfiMdeModulePkgTokenSpaceGuid.PcdFlashNvStorageFtwSpareSize|0x00040000
>
>    gArmTokenSpaceGuid.PcdVFPEnabled|1
>
> --
> 1.7.10.4
>
>
------------------------------------------------------------------------------
Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-devel

Reply via email to