[edk2-devel] [PATCH v3] ArmVirtPkg: increase FD/FV size for NOOPT builds

Ard Biesheuvel posted 1 patch 4 years, 7 months ago
Failed in applying to current master (apply log)
ArmVirtPkg/ArmVirt.dsc.inc       | 15 ++++++++++++
ArmVirtPkg/ArmVirtQemu.fdf       | 14 +++++++++---
ArmVirtPkg/ArmVirtQemuKernel.fdf | 24 +++++++++++++++++---
ArmVirtPkg/ArmVirtXen.fdf        | 24 +++++++++++++++++---
4 files changed, 68 insertions(+), 9 deletions(-)
[edk2-devel] [PATCH v3] ArmVirtPkg: increase FD/FV size for NOOPT builds
Posted by Ard Biesheuvel 4 years, 7 months ago
After upgrading the CI system we use for building the ArmVirtPkg
targets, we started seeing failures due to the NOOPT build running
out of space when using the CLANG38 toolchain definition combined
with clang 7.

We really don't want to increase the FD/FV sizes in general to
accommodate this, so parameterize the relevant quantities and
increase them by 50% for NOOPT builds.

Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
---
v3: - don't rely on fragile ordering of DEFINEs for the target dependent
      default value, but instead, use a single FD_SIZE_IN_MB macro whose
      default is DEFINEd either to 2 or 3 depend on the build target. That
      permits switching back to 2 MB for NOOPT builds if desired while
      changing the default to 3 MB
    - fix a few image header definitions that I missed for ARM32 + Xen

v2: implement suggestions by Laszlo on 1) how to parameterize this further,
    and b) to avoid adding another .inc file
    update kernel header field, as pointed out by Philippe


 ArmVirtPkg/ArmVirt.dsc.inc       | 15 ++++++++++++
 ArmVirtPkg/ArmVirtQemu.fdf       | 14 +++++++++---
 ArmVirtPkg/ArmVirtQemuKernel.fdf | 24 +++++++++++++++++---
 ArmVirtPkg/ArmVirtXen.fdf        | 24 +++++++++++++++++---
 4 files changed, 68 insertions(+), 9 deletions(-)

diff --git a/ArmVirtPkg/ArmVirt.dsc.inc b/ArmVirtPkg/ArmVirt.dsc.inc
index a4ae25d982a2..10037c938eb8 100644
--- a/ArmVirtPkg/ArmVirt.dsc.inc
+++ b/ArmVirtPkg/ArmVirt.dsc.inc
@@ -10,6 +10,21 @@
 [Defines]
   DEFINE DEBUG_PRINT_ERROR_LEVEL = 0x8000004F
 
+!if $(TARGET) != NOOPT
+  DEFINE FD_SIZE_IN_MB    = 2
+!else
+  DEFINE FD_SIZE_IN_MB    = 3
+!endif
+
+!if $(FD_SIZE_IN_MB) == 2
+  DEFINE FD_SIZE          = 0x200000
+  DEFINE FD_NUM_BLOCKS    = 0x200
+!endif
+!if $(FD_SIZE_IN_MB) == 3
+  DEFINE FD_SIZE          = 0x300000
+  DEFINE FD_NUM_BLOCKS    = 0x300
+!endif
+
 [BuildOptions.common.EDKII.DXE_CORE,BuildOptions.common.EDKII.DXE_DRIVER,BuildOptions.common.EDKII.UEFI_DRIVER,BuildOptions.common.EDKII.UEFI_APPLICATION]
   GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
 
diff --git a/ArmVirtPkg/ArmVirtQemu.fdf b/ArmVirtPkg/ArmVirtQemu.fdf
index c2169cb7964b..2c8936a1ae15 100644
--- a/ArmVirtPkg/ArmVirtQemu.fdf
+++ b/ArmVirtPkg/ArmVirtQemu.fdf
@@ -20,14 +20,22 @@
 #
 ################################################################################
 
+[Defines]
+!if $(FD_SIZE_IN_MB) == 2
+  DEFINE FVMAIN_COMPACT_SIZE  = 0x1ff000
+!endif
+!if $(FD_SIZE_IN_MB) == 3
+  DEFINE FVMAIN_COMPACT_SIZE  = 0x2ff000
+!endif
+
 [FD.QEMU_EFI]
 BaseAddress   = 0x00000000|gArmTokenSpaceGuid.PcdFdBaseAddress  # QEMU assigns 0 - 0x8000000 for a BootROM
-Size          = 0x00200000|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
+Size          = $(FD_SIZE)|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
 ErasePolarity = 1
 
 # This one is tricky, it must be: BlockSize * NumBlocks = Size
 BlockSize     = 0x00001000
-NumBlocks     = 0x200
+NumBlocks     = $(FD_NUM_BLOCKS)
 
 ################################################################################
 #
@@ -59,7 +67,7 @@ DATA = {
 !endif
 }
 
-0x00001000|0x001ff000
+0x00001000|$(FVMAIN_COMPACT_SIZE)
 gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize
 FV = FVMAIN_COMPACT
 
diff --git a/ArmVirtPkg/ArmVirtQemuKernel.fdf b/ArmVirtPkg/ArmVirtQemuKernel.fdf
index f675b6d65ee1..72fc8dd698f8 100644
--- a/ArmVirtPkg/ArmVirtQemuKernel.fdf
+++ b/ArmVirtPkg/ArmVirtQemuKernel.fdf
@@ -20,14 +20,22 @@
 #
 ################################################################################
 
+[Defines]
+!if $(FD_SIZE_IN_MB) == 2
+  DEFINE FVMAIN_COMPACT_SIZE  = 0x1f8000
+!endif
+!if $(FD_SIZE_IN_MB) == 3
+  DEFINE FVMAIN_COMPACT_SIZE  = 0x2f8000
+!endif
+
 [FD.QEMU_EFI]
 BaseAddress   = 0x00000000|gArmTokenSpaceGuid.PcdFdBaseAddress  # QEMU assigns 0 - 0x8000000 for a BootROM
-Size          = 0x00200000|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
+Size          = $(FD_SIZE)|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
 ErasePolarity = 1
 
 # This one is tricky, it must be: BlockSize * NumBlocks = Size
 BlockSize     = 0x00001000
-NumBlocks     = 0x200
+NumBlocks     = $(FD_NUM_BLOCKS)
 
 ################################################################################
 #
@@ -56,7 +64,12 @@ DATA = {
   0x01, 0x00, 0x00, 0x10,                         # code0: adr x1, .
   0xff, 0x1f, 0x00, 0x14,                         # code1: b 0x8000
   0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB
+!if $(FD_SIZE_IN_MB) == 2
   0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB
+!endif
+!if $(FD_SIZE_IN_MB) == 3
+  0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 3 MB
+!endif
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3
@@ -76,12 +89,17 @@ DATA = {
   0xf6, 0x1f, 0x00, 0xea, # b 0x8000
   0x18, 0x28, 0x6f, 0x01, # magic
   0x00, 0x00, 0x00, 0x00, # start
+!if $(FD_SIZE_IN_MB) == 2
   0x00, 0x00, 0x20, 0x00, # image size: 2 MB
+!endif
+!if $(FD_SIZE_IN_MB) == 3
+  0x00, 0x00, 0x30, 0x00, # image size: 3 MB
+!endif
   0x01, 0x02, 0x03, 0x04  # endiannness flag
 !endif
 }
 
-0x00008000|0x001f8000
+0x00008000|$(FVMAIN_COMPACT_SIZE)
 gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize
 FV = FVMAIN_COMPACT
 
diff --git a/ArmVirtPkg/ArmVirtXen.fdf b/ArmVirtPkg/ArmVirtXen.fdf
index 79f681cde028..38d4cc163524 100644
--- a/ArmVirtPkg/ArmVirtXen.fdf
+++ b/ArmVirtPkg/ArmVirtXen.fdf
@@ -20,14 +20,22 @@
 #
 ################################################################################
 
+[Defines]
+!if $(FD_SIZE_IN_MB) == 2
+  DEFINE FVMAIN_COMPACT_SIZE  = 0x1fe000
+!endif
+!if $(FD_SIZE_IN_MB) == 3
+  DEFINE FVMAIN_COMPACT_SIZE  = 0x2fe000
+!endif
+
 [FD.XEN_EFI]
 BaseAddress   = 0x00000000|gArmTokenSpaceGuid.PcdFdBaseAddress
-Size          = 0x00200000|gArmTokenSpaceGuid.PcdFdSize
+Size          = $(FD_SIZE)|gArmTokenSpaceGuid.PcdFdSize
 ErasePolarity = 1
 
 # This one is tricky, it must be: BlockSize * NumBlocks = Size
 BlockSize     = 0x00001000
-NumBlocks     = 0x200
+NumBlocks     = $(FD_NUM_BLOCKS)
 
 ################################################################################
 #
@@ -56,7 +64,12 @@ DATA = {
   0x01, 0x00, 0x00, 0x10,                         # code0: adr x1, .
   0xff, 0x07, 0x00, 0x14,                         # code1: b 0x2000
   0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB
+!if $(FD_SIZE_IN_MB) == 2
   0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB
+!endif
+!if $(FD_SIZE_IN_MB) == 3
+  0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 3 MB
+!endif
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2
   0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3
@@ -76,12 +89,17 @@ DATA = {
   0xf6, 0x07, 0x00, 0xea, # b 0x2000
   0x18, 0x28, 0x6f, 0x01, # magic
   0x00, 0x00, 0x00, 0x00, # start
+!if $(FD_SIZE_IN_MB) == 2
   0x00, 0x00, 0x20, 0x00, # image size: 2 MB
+!endif
+!if $(FD_SIZE_IN_MB) == 3
+  0x00, 0x00, 0x30, 0x00, # image size: 3 MB
+!endif
   0x01, 0x02, 0x03, 0x04  # endiannness flag
 !endif
 }
 
-0x00002000|0x001fe000
+0x00002000|$(FVMAIN_COMPACT_SIZE)
 gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize
 FV = FVMAIN_COMPACT
 
-- 
2.17.1


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#47190): https://edk2.groups.io/g/devel/message/47190
Mute This Topic: https://groups.io/mt/34117235/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-

Re: [edk2-devel] [PATCH v3] ArmVirtPkg: increase FD/FV size for NOOPT builds
Posted by Philippe Mathieu-Daudé 4 years, 7 months ago
On 9/12/19 6:58 PM, Ard Biesheuvel wrote:
> After upgrading the CI system we use for building the ArmVirtPkg
> targets, we started seeing failures due to the NOOPT build running
> out of space when using the CLANG38 toolchain definition combined
> with clang 7.
> 
> We really don't want to increase the FD/FV sizes in general to
> accommodate this, so parameterize the relevant quantities and
> increase them by 50% for NOOPT builds.
> 
> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> ---
> v3: - don't rely on fragile ordering of DEFINEs for the target dependent
>       default value, but instead, use a single FD_SIZE_IN_MB macro whose
>       default is DEFINEd either to 2 or 3 depend on the build target. That
>       permits switching back to 2 MB for NOOPT builds if desired while
>       changing the default to 3 MB
>     - fix a few image header definitions that I missed for ARM32 + Xen
> 
> v2: implement suggestions by Laszlo on 1) how to parameterize this further,
>     and b) to avoid adding another .inc file
>     update kernel header field, as pointed out by Philippe
> 
> 
>  ArmVirtPkg/ArmVirt.dsc.inc       | 15 ++++++++++++
>  ArmVirtPkg/ArmVirtQemu.fdf       | 14 +++++++++---
>  ArmVirtPkg/ArmVirtQemuKernel.fdf | 24 +++++++++++++++++---
>  ArmVirtPkg/ArmVirtXen.fdf        | 24 +++++++++++++++++---
>  4 files changed, 68 insertions(+), 9 deletions(-)
> 
> diff --git a/ArmVirtPkg/ArmVirt.dsc.inc b/ArmVirtPkg/ArmVirt.dsc.inc
> index a4ae25d982a2..10037c938eb8 100644
> --- a/ArmVirtPkg/ArmVirt.dsc.inc
> +++ b/ArmVirtPkg/ArmVirt.dsc.inc
> @@ -10,6 +10,21 @@
>  [Defines]
>    DEFINE DEBUG_PRINT_ERROR_LEVEL = 0x8000004F
>  
> +!if $(TARGET) != NOOPT
> +  DEFINE FD_SIZE_IN_MB    = 2
> +!else
> +  DEFINE FD_SIZE_IN_MB    = 3
> +!endif
> +
> +!if $(FD_SIZE_IN_MB) == 2
> +  DEFINE FD_SIZE          = 0x200000
> +  DEFINE FD_NUM_BLOCKS    = 0x200
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  DEFINE FD_SIZE          = 0x300000
> +  DEFINE FD_NUM_BLOCKS    = 0x300
> +!endif
> +
>  [BuildOptions.common.EDKII.DXE_CORE,BuildOptions.common.EDKII.DXE_DRIVER,BuildOptions.common.EDKII.UEFI_DRIVER,BuildOptions.common.EDKII.UEFI_APPLICATION]
>    GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
>  
> diff --git a/ArmVirtPkg/ArmVirtQemu.fdf b/ArmVirtPkg/ArmVirtQemu.fdf
> index c2169cb7964b..2c8936a1ae15 100644
> --- a/ArmVirtPkg/ArmVirtQemu.fdf
> +++ b/ArmVirtPkg/ArmVirtQemu.fdf
> @@ -20,14 +20,22 @@
>  #
>  ################################################################################
>  
> +[Defines]
> +!if $(FD_SIZE_IN_MB) == 2
> +  DEFINE FVMAIN_COMPACT_SIZE  = 0x1ff000
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  DEFINE FVMAIN_COMPACT_SIZE  = 0x2ff000
> +!endif
> +
>  [FD.QEMU_EFI]
>  BaseAddress   = 0x00000000|gArmTokenSpaceGuid.PcdFdBaseAddress  # QEMU assigns 0 - 0x8000000 for a BootROM
> -Size          = 0x00200000|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
> +Size          = $(FD_SIZE)|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
>  ErasePolarity = 1
>  
>  # This one is tricky, it must be: BlockSize * NumBlocks = Size
>  BlockSize     = 0x00001000
> -NumBlocks     = 0x200
> +NumBlocks     = $(FD_NUM_BLOCKS)
>  
>  ################################################################################
>  #
> @@ -59,7 +67,7 @@ DATA = {
>  !endif
>  }
>  
> -0x00001000|0x001ff000
> +0x00001000|$(FVMAIN_COMPACT_SIZE)
>  gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize
>  FV = FVMAIN_COMPACT
>  
> diff --git a/ArmVirtPkg/ArmVirtQemuKernel.fdf b/ArmVirtPkg/ArmVirtQemuKernel.fdf
> index f675b6d65ee1..72fc8dd698f8 100644
> --- a/ArmVirtPkg/ArmVirtQemuKernel.fdf
> +++ b/ArmVirtPkg/ArmVirtQemuKernel.fdf
> @@ -20,14 +20,22 @@
>  #
>  ################################################################################
>  
> +[Defines]
> +!if $(FD_SIZE_IN_MB) == 2
> +  DEFINE FVMAIN_COMPACT_SIZE  = 0x1f8000
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  DEFINE FVMAIN_COMPACT_SIZE  = 0x2f8000
> +!endif
> +
>  [FD.QEMU_EFI]
>  BaseAddress   = 0x00000000|gArmTokenSpaceGuid.PcdFdBaseAddress  # QEMU assigns 0 - 0x8000000 for a BootROM
> -Size          = 0x00200000|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
> +Size          = $(FD_SIZE)|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
>  ErasePolarity = 1
>  
>  # This one is tricky, it must be: BlockSize * NumBlocks = Size
>  BlockSize     = 0x00001000
> -NumBlocks     = 0x200
> +NumBlocks     = $(FD_NUM_BLOCKS)
>  
>  ################################################################################
>  #
> @@ -56,7 +64,12 @@ DATA = {
>    0x01, 0x00, 0x00, 0x10,                         # code0: adr x1, .
>    0xff, 0x1f, 0x00, 0x14,                         # code1: b 0x8000
>    0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB
> +!if $(FD_SIZE_IN_MB) == 2
>    0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 3 MB
> +!endif
>    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags
>    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2
>    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3
> @@ -76,12 +89,17 @@ DATA = {
>    0xf6, 0x1f, 0x00, 0xea, # b 0x8000
>    0x18, 0x28, 0x6f, 0x01, # magic
>    0x00, 0x00, 0x00, 0x00, # start
> +!if $(FD_SIZE_IN_MB) == 2
>    0x00, 0x00, 0x20, 0x00, # image size: 2 MB
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  0x00, 0x00, 0x30, 0x00, # image size: 3 MB
> +!endif
>    0x01, 0x02, 0x03, 0x04  # endiannness flag
>  !endif
>  }
>  
> -0x00008000|0x001f8000
> +0x00008000|$(FVMAIN_COMPACT_SIZE)
>  gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize
>  FV = FVMAIN_COMPACT
>  
> diff --git a/ArmVirtPkg/ArmVirtXen.fdf b/ArmVirtPkg/ArmVirtXen.fdf
> index 79f681cde028..38d4cc163524 100644
> --- a/ArmVirtPkg/ArmVirtXen.fdf
> +++ b/ArmVirtPkg/ArmVirtXen.fdf
> @@ -20,14 +20,22 @@
>  #
>  ################################################################################
>  
> +[Defines]
> +!if $(FD_SIZE_IN_MB) == 2
> +  DEFINE FVMAIN_COMPACT_SIZE  = 0x1fe000
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  DEFINE FVMAIN_COMPACT_SIZE  = 0x2fe000
> +!endif
> +
>  [FD.XEN_EFI]
>  BaseAddress   = 0x00000000|gArmTokenSpaceGuid.PcdFdBaseAddress
> -Size          = 0x00200000|gArmTokenSpaceGuid.PcdFdSize
> +Size          = $(FD_SIZE)|gArmTokenSpaceGuid.PcdFdSize
>  ErasePolarity = 1
>  
>  # This one is tricky, it must be: BlockSize * NumBlocks = Size
>  BlockSize     = 0x00001000
> -NumBlocks     = 0x200
> +NumBlocks     = $(FD_NUM_BLOCKS)
>  
>  ################################################################################
>  #
> @@ -56,7 +64,12 @@ DATA = {
>    0x01, 0x00, 0x00, 0x10,                         # code0: adr x1, .
>    0xff, 0x07, 0x00, 0x14,                         # code1: b 0x2000
>    0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB
> +!if $(FD_SIZE_IN_MB) == 2
>    0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 3 MB
> +!endif
>    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags
>    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2
>    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3
> @@ -76,12 +89,17 @@ DATA = {
>    0xf6, 0x07, 0x00, 0xea, # b 0x2000
>    0x18, 0x28, 0x6f, 0x01, # magic
>    0x00, 0x00, 0x00, 0x00, # start
> +!if $(FD_SIZE_IN_MB) == 2
>    0x00, 0x00, 0x20, 0x00, # image size: 2 MB
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  0x00, 0x00, 0x30, 0x00, # image size: 3 MB
> +!endif
>    0x01, 0x02, 0x03, 0x04  # endiannness flag
>  !endif
>  }
>  
> -0x00002000|0x001fe000
> +0x00002000|$(FVMAIN_COMPACT_SIZE)
>  gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize
>  FV = FVMAIN_COMPACT

Reviewed-by: Philippe Mathieu-Daude <philmd@redhat.com>

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#47194): https://edk2.groups.io/g/devel/message/47194
Mute This Topic: https://groups.io/mt/34117235/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-

Re: [edk2-devel] [PATCH v3] ArmVirtPkg: increase FD/FV size for NOOPT builds
Posted by Laszlo Ersek 4 years, 7 months ago
On 09/12/19 18:58, Ard Biesheuvel wrote:
> After upgrading the CI system we use for building the ArmVirtPkg
> targets, we started seeing failures due to the NOOPT build running
> out of space when using the CLANG38 toolchain definition combined
> with clang 7.
> 
> We really don't want to increase the FD/FV sizes in general to
> accommodate this, so parameterize the relevant quantities and
> increase them by 50% for NOOPT builds.
> 
> Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> ---
> v3: - don't rely on fragile ordering of DEFINEs for the target dependent
>       default value, but instead, use a single FD_SIZE_IN_MB macro whose
>       default is DEFINEd either to 2 or 3 depend on the build target. That
>       permits switching back to 2 MB for NOOPT builds if desired while
>       changing the default to 3 MB
>     - fix a few image header definitions that I missed for ARM32 + Xen
> 
> v2: implement suggestions by Laszlo on 1) how to parameterize this further,
>     and b) to avoid adding another .inc file
>     update kernel header field, as pointed out by Philippe
> 
> 
>  ArmVirtPkg/ArmVirt.dsc.inc       | 15 ++++++++++++
>  ArmVirtPkg/ArmVirtQemu.fdf       | 14 +++++++++---
>  ArmVirtPkg/ArmVirtQemuKernel.fdf | 24 +++++++++++++++++---
>  ArmVirtPkg/ArmVirtXen.fdf        | 24 +++++++++++++++++---
>  4 files changed, 68 insertions(+), 9 deletions(-)
> 
> diff --git a/ArmVirtPkg/ArmVirt.dsc.inc b/ArmVirtPkg/ArmVirt.dsc.inc
> index a4ae25d982a2..10037c938eb8 100644
> --- a/ArmVirtPkg/ArmVirt.dsc.inc
> +++ b/ArmVirtPkg/ArmVirt.dsc.inc
> @@ -10,6 +10,21 @@
>  [Defines]
>    DEFINE DEBUG_PRINT_ERROR_LEVEL = 0x8000004F
>  
> +!if $(TARGET) != NOOPT
> +  DEFINE FD_SIZE_IN_MB    = 2
> +!else
> +  DEFINE FD_SIZE_IN_MB    = 3
> +!endif
> +
> +!if $(FD_SIZE_IN_MB) == 2
> +  DEFINE FD_SIZE          = 0x200000
> +  DEFINE FD_NUM_BLOCKS    = 0x200
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  DEFINE FD_SIZE          = 0x300000
> +  DEFINE FD_NUM_BLOCKS    = 0x300
> +!endif
> +
>  [BuildOptions.common.EDKII.DXE_CORE,BuildOptions.common.EDKII.DXE_DRIVER,BuildOptions.common.EDKII.UEFI_DRIVER,BuildOptions.common.EDKII.UEFI_APPLICATION]
>    GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
>  
> diff --git a/ArmVirtPkg/ArmVirtQemu.fdf b/ArmVirtPkg/ArmVirtQemu.fdf
> index c2169cb7964b..2c8936a1ae15 100644
> --- a/ArmVirtPkg/ArmVirtQemu.fdf
> +++ b/ArmVirtPkg/ArmVirtQemu.fdf
> @@ -20,14 +20,22 @@
>  #
>  ################################################################################
>  
> +[Defines]
> +!if $(FD_SIZE_IN_MB) == 2
> +  DEFINE FVMAIN_COMPACT_SIZE  = 0x1ff000
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  DEFINE FVMAIN_COMPACT_SIZE  = 0x2ff000
> +!endif
> +
>  [FD.QEMU_EFI]
>  BaseAddress   = 0x00000000|gArmTokenSpaceGuid.PcdFdBaseAddress  # QEMU assigns 0 - 0x8000000 for a BootROM
> -Size          = 0x00200000|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
> +Size          = $(FD_SIZE)|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
>  ErasePolarity = 1
>  
>  # This one is tricky, it must be: BlockSize * NumBlocks = Size
>  BlockSize     = 0x00001000
> -NumBlocks     = 0x200
> +NumBlocks     = $(FD_NUM_BLOCKS)
>  
>  ################################################################################
>  #
> @@ -59,7 +67,7 @@ DATA = {
>  !endif
>  }
>  
> -0x00001000|0x001ff000
> +0x00001000|$(FVMAIN_COMPACT_SIZE)
>  gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize
>  FV = FVMAIN_COMPACT
>  
> diff --git a/ArmVirtPkg/ArmVirtQemuKernel.fdf b/ArmVirtPkg/ArmVirtQemuKernel.fdf
> index f675b6d65ee1..72fc8dd698f8 100644
> --- a/ArmVirtPkg/ArmVirtQemuKernel.fdf
> +++ b/ArmVirtPkg/ArmVirtQemuKernel.fdf
> @@ -20,14 +20,22 @@
>  #
>  ################################################################################
>  
> +[Defines]
> +!if $(FD_SIZE_IN_MB) == 2
> +  DEFINE FVMAIN_COMPACT_SIZE  = 0x1f8000
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  DEFINE FVMAIN_COMPACT_SIZE  = 0x2f8000
> +!endif
> +
>  [FD.QEMU_EFI]
>  BaseAddress   = 0x00000000|gArmTokenSpaceGuid.PcdFdBaseAddress  # QEMU assigns 0 - 0x8000000 for a BootROM
> -Size          = 0x00200000|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
> +Size          = $(FD_SIZE)|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
>  ErasePolarity = 1
>  
>  # This one is tricky, it must be: BlockSize * NumBlocks = Size
>  BlockSize     = 0x00001000
> -NumBlocks     = 0x200
> +NumBlocks     = $(FD_NUM_BLOCKS)
>  
>  ################################################################################
>  #
> @@ -56,7 +64,12 @@ DATA = {
>    0x01, 0x00, 0x00, 0x10,                         # code0: adr x1, .
>    0xff, 0x1f, 0x00, 0x14,                         # code1: b 0x8000
>    0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB
> +!if $(FD_SIZE_IN_MB) == 2
>    0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 3 MB
> +!endif
>    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags
>    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2
>    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3
> @@ -76,12 +89,17 @@ DATA = {
>    0xf6, 0x1f, 0x00, 0xea, # b 0x8000
>    0x18, 0x28, 0x6f, 0x01, # magic
>    0x00, 0x00, 0x00, 0x00, # start
> +!if $(FD_SIZE_IN_MB) == 2
>    0x00, 0x00, 0x20, 0x00, # image size: 2 MB
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  0x00, 0x00, 0x30, 0x00, # image size: 3 MB
> +!endif
>    0x01, 0x02, 0x03, 0x04  # endiannness flag
>  !endif
>  }
>  
> -0x00008000|0x001f8000
> +0x00008000|$(FVMAIN_COMPACT_SIZE)
>  gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize
>  FV = FVMAIN_COMPACT
>  
> diff --git a/ArmVirtPkg/ArmVirtXen.fdf b/ArmVirtPkg/ArmVirtXen.fdf
> index 79f681cde028..38d4cc163524 100644
> --- a/ArmVirtPkg/ArmVirtXen.fdf
> +++ b/ArmVirtPkg/ArmVirtXen.fdf
> @@ -20,14 +20,22 @@
>  #
>  ################################################################################
>  
> +[Defines]
> +!if $(FD_SIZE_IN_MB) == 2
> +  DEFINE FVMAIN_COMPACT_SIZE  = 0x1fe000
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  DEFINE FVMAIN_COMPACT_SIZE  = 0x2fe000
> +!endif
> +
>  [FD.XEN_EFI]
>  BaseAddress   = 0x00000000|gArmTokenSpaceGuid.PcdFdBaseAddress
> -Size          = 0x00200000|gArmTokenSpaceGuid.PcdFdSize
> +Size          = $(FD_SIZE)|gArmTokenSpaceGuid.PcdFdSize
>  ErasePolarity = 1
>  
>  # This one is tricky, it must be: BlockSize * NumBlocks = Size
>  BlockSize     = 0x00001000
> -NumBlocks     = 0x200
> +NumBlocks     = $(FD_NUM_BLOCKS)
>  
>  ################################################################################
>  #
> @@ -56,7 +64,12 @@ DATA = {
>    0x01, 0x00, 0x00, 0x10,                         # code0: adr x1, .
>    0xff, 0x07, 0x00, 0x14,                         # code1: b 0x2000
>    0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB
> +!if $(FD_SIZE_IN_MB) == 2
>    0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 3 MB
> +!endif
>    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags
>    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2
>    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3
> @@ -76,12 +89,17 @@ DATA = {
>    0xf6, 0x07, 0x00, 0xea, # b 0x2000
>    0x18, 0x28, 0x6f, 0x01, # magic
>    0x00, 0x00, 0x00, 0x00, # start
> +!if $(FD_SIZE_IN_MB) == 2
>    0x00, 0x00, 0x20, 0x00, # image size: 2 MB
> +!endif
> +!if $(FD_SIZE_IN_MB) == 3
> +  0x00, 0x00, 0x30, 0x00, # image size: 3 MB
> +!endif
>    0x01, 0x02, 0x03, 0x04  # endiannness flag
>  !endif
>  }
>  
> -0x00002000|0x001fe000
> +0x00002000|$(FVMAIN_COMPACT_SIZE)
>  gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize
>  FV = FVMAIN_COMPACT
>  
> 

Reviewed-by: Laszlo Ersek <lersek@redhat.com>

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#47206): https://edk2.groups.io/g/devel/message/47206
Mute This Topic: https://groups.io/mt/34117235/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-

Re: [edk2-devel] [PATCH v3] ArmVirtPkg: increase FD/FV size for NOOPT builds
Posted by Ard Biesheuvel 4 years, 7 months ago
On Fri, 13 Sep 2019 at 13:44, Laszlo Ersek <lersek@redhat.com> wrote:
>
> On 09/12/19 18:58, Ard Biesheuvel wrote:
> > After upgrading the CI system we use for building the ArmVirtPkg
> > targets, we started seeing failures due to the NOOPT build running
> > out of space when using the CLANG38 toolchain definition combined
> > with clang 7.
> >
> > We really don't want to increase the FD/FV sizes in general to
> > accommodate this, so parameterize the relevant quantities and
> > increase them by 50% for NOOPT builds.
> >
> > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
> > ---
> > v3: - don't rely on fragile ordering of DEFINEs for the target dependent
> >       default value, but instead, use a single FD_SIZE_IN_MB macro whose
> >       default is DEFINEd either to 2 or 3 depend on the build target. That
> >       permits switching back to 2 MB for NOOPT builds if desired while
> >       changing the default to 3 MB
> >     - fix a few image header definitions that I missed for ARM32 + Xen
> >
> > v2: implement suggestions by Laszlo on 1) how to parameterize this further,
> >     and b) to avoid adding another .inc file
> >     update kernel header field, as pointed out by Philippe
> >
> >
> >  ArmVirtPkg/ArmVirt.dsc.inc       | 15 ++++++++++++
> >  ArmVirtPkg/ArmVirtQemu.fdf       | 14 +++++++++---
> >  ArmVirtPkg/ArmVirtQemuKernel.fdf | 24 +++++++++++++++++---
> >  ArmVirtPkg/ArmVirtXen.fdf        | 24 +++++++++++++++++---
> >  4 files changed, 68 insertions(+), 9 deletions(-)
> >
> > diff --git a/ArmVirtPkg/ArmVirt.dsc.inc b/ArmVirtPkg/ArmVirt.dsc.inc
> > index a4ae25d982a2..10037c938eb8 100644
> > --- a/ArmVirtPkg/ArmVirt.dsc.inc
> > +++ b/ArmVirtPkg/ArmVirt.dsc.inc
> > @@ -10,6 +10,21 @@
> >  [Defines]
> >    DEFINE DEBUG_PRINT_ERROR_LEVEL = 0x8000004F
> >
> > +!if $(TARGET) != NOOPT
> > +  DEFINE FD_SIZE_IN_MB    = 2
> > +!else
> > +  DEFINE FD_SIZE_IN_MB    = 3
> > +!endif
> > +
> > +!if $(FD_SIZE_IN_MB) == 2
> > +  DEFINE FD_SIZE          = 0x200000
> > +  DEFINE FD_NUM_BLOCKS    = 0x200
> > +!endif
> > +!if $(FD_SIZE_IN_MB) == 3
> > +  DEFINE FD_SIZE          = 0x300000
> > +  DEFINE FD_NUM_BLOCKS    = 0x300
> > +!endif
> > +
> >  [BuildOptions.common.EDKII.DXE_CORE,BuildOptions.common.EDKII.DXE_DRIVER,BuildOptions.common.EDKII.UEFI_DRIVER,BuildOptions.common.EDKII.UEFI_APPLICATION]
> >    GCC:*_*_*_DLINK_FLAGS = -z common-page-size=0x1000
> >
> > diff --git a/ArmVirtPkg/ArmVirtQemu.fdf b/ArmVirtPkg/ArmVirtQemu.fdf
> > index c2169cb7964b..2c8936a1ae15 100644
> > --- a/ArmVirtPkg/ArmVirtQemu.fdf
> > +++ b/ArmVirtPkg/ArmVirtQemu.fdf
> > @@ -20,14 +20,22 @@
> >  #
> >  ################################################################################
> >
> > +[Defines]
> > +!if $(FD_SIZE_IN_MB) == 2
> > +  DEFINE FVMAIN_COMPACT_SIZE  = 0x1ff000
> > +!endif
> > +!if $(FD_SIZE_IN_MB) == 3
> > +  DEFINE FVMAIN_COMPACT_SIZE  = 0x2ff000
> > +!endif
> > +
> >  [FD.QEMU_EFI]
> >  BaseAddress   = 0x00000000|gArmTokenSpaceGuid.PcdFdBaseAddress  # QEMU assigns 0 - 0x8000000 for a BootROM
> > -Size          = 0x00200000|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
> > +Size          = $(FD_SIZE)|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
> >  ErasePolarity = 1
> >
> >  # This one is tricky, it must be: BlockSize * NumBlocks = Size
> >  BlockSize     = 0x00001000
> > -NumBlocks     = 0x200
> > +NumBlocks     = $(FD_NUM_BLOCKS)
> >
> >  ################################################################################
> >  #
> > @@ -59,7 +67,7 @@ DATA = {
> >  !endif
> >  }
> >
> > -0x00001000|0x001ff000
> > +0x00001000|$(FVMAIN_COMPACT_SIZE)
> >  gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize
> >  FV = FVMAIN_COMPACT
> >
> > diff --git a/ArmVirtPkg/ArmVirtQemuKernel.fdf b/ArmVirtPkg/ArmVirtQemuKernel.fdf
> > index f675b6d65ee1..72fc8dd698f8 100644
> > --- a/ArmVirtPkg/ArmVirtQemuKernel.fdf
> > +++ b/ArmVirtPkg/ArmVirtQemuKernel.fdf
> > @@ -20,14 +20,22 @@
> >  #
> >  ################################################################################
> >
> > +[Defines]
> > +!if $(FD_SIZE_IN_MB) == 2
> > +  DEFINE FVMAIN_COMPACT_SIZE  = 0x1f8000
> > +!endif
> > +!if $(FD_SIZE_IN_MB) == 3
> > +  DEFINE FVMAIN_COMPACT_SIZE  = 0x2f8000
> > +!endif
> > +
> >  [FD.QEMU_EFI]
> >  BaseAddress   = 0x00000000|gArmTokenSpaceGuid.PcdFdBaseAddress  # QEMU assigns 0 - 0x8000000 for a BootROM
> > -Size          = 0x00200000|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
> > +Size          = $(FD_SIZE)|gArmTokenSpaceGuid.PcdFdSize         # The size in bytes of the FLASH Device
> >  ErasePolarity = 1
> >
> >  # This one is tricky, it must be: BlockSize * NumBlocks = Size
> >  BlockSize     = 0x00001000
> > -NumBlocks     = 0x200
> > +NumBlocks     = $(FD_NUM_BLOCKS)
> >
> >  ################################################################################
> >  #
> > @@ -56,7 +64,12 @@ DATA = {
> >    0x01, 0x00, 0x00, 0x10,                         # code0: adr x1, .
> >    0xff, 0x1f, 0x00, 0x14,                         # code1: b 0x8000
> >    0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB
> > +!if $(FD_SIZE_IN_MB) == 2
> >    0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB
> > +!endif
> > +!if $(FD_SIZE_IN_MB) == 3
> > +  0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 3 MB
> > +!endif
> >    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags
> >    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2
> >    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3
> > @@ -76,12 +89,17 @@ DATA = {
> >    0xf6, 0x1f, 0x00, 0xea, # b 0x8000
> >    0x18, 0x28, 0x6f, 0x01, # magic
> >    0x00, 0x00, 0x00, 0x00, # start
> > +!if $(FD_SIZE_IN_MB) == 2
> >    0x00, 0x00, 0x20, 0x00, # image size: 2 MB
> > +!endif
> > +!if $(FD_SIZE_IN_MB) == 3
> > +  0x00, 0x00, 0x30, 0x00, # image size: 3 MB
> > +!endif
> >    0x01, 0x02, 0x03, 0x04  # endiannness flag
> >  !endif
> >  }
> >
> > -0x00008000|0x001f8000
> > +0x00008000|$(FVMAIN_COMPACT_SIZE)
> >  gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize
> >  FV = FVMAIN_COMPACT
> >
> > diff --git a/ArmVirtPkg/ArmVirtXen.fdf b/ArmVirtPkg/ArmVirtXen.fdf
> > index 79f681cde028..38d4cc163524 100644
> > --- a/ArmVirtPkg/ArmVirtXen.fdf
> > +++ b/ArmVirtPkg/ArmVirtXen.fdf
> > @@ -20,14 +20,22 @@
> >  #
> >  ################################################################################
> >
> > +[Defines]
> > +!if $(FD_SIZE_IN_MB) == 2
> > +  DEFINE FVMAIN_COMPACT_SIZE  = 0x1fe000
> > +!endif
> > +!if $(FD_SIZE_IN_MB) == 3
> > +  DEFINE FVMAIN_COMPACT_SIZE  = 0x2fe000
> > +!endif
> > +
> >  [FD.XEN_EFI]
> >  BaseAddress   = 0x00000000|gArmTokenSpaceGuid.PcdFdBaseAddress
> > -Size          = 0x00200000|gArmTokenSpaceGuid.PcdFdSize
> > +Size          = $(FD_SIZE)|gArmTokenSpaceGuid.PcdFdSize
> >  ErasePolarity = 1
> >
> >  # This one is tricky, it must be: BlockSize * NumBlocks = Size
> >  BlockSize     = 0x00001000
> > -NumBlocks     = 0x200
> > +NumBlocks     = $(FD_NUM_BLOCKS)
> >
> >  ################################################################################
> >  #
> > @@ -56,7 +64,12 @@ DATA = {
> >    0x01, 0x00, 0x00, 0x10,                         # code0: adr x1, .
> >    0xff, 0x07, 0x00, 0x14,                         # code1: b 0x2000
> >    0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB
> > +!if $(FD_SIZE_IN_MB) == 2
> >    0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB
> > +!endif
> > +!if $(FD_SIZE_IN_MB) == 3
> > +  0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 3 MB
> > +!endif
> >    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags
> >    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res2
> >    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # res3
> > @@ -76,12 +89,17 @@ DATA = {
> >    0xf6, 0x07, 0x00, 0xea, # b 0x2000
> >    0x18, 0x28, 0x6f, 0x01, # magic
> >    0x00, 0x00, 0x00, 0x00, # start
> > +!if $(FD_SIZE_IN_MB) == 2
> >    0x00, 0x00, 0x20, 0x00, # image size: 2 MB
> > +!endif
> > +!if $(FD_SIZE_IN_MB) == 3
> > +  0x00, 0x00, 0x30, 0x00, # image size: 3 MB
> > +!endif
> >    0x01, 0x02, 0x03, 0x04  # endiannness flag
> >  !endif
> >  }
> >
> > -0x00002000|0x001fe000
> > +0x00002000|$(FVMAIN_COMPACT_SIZE)
> >  gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize
> >  FV = FVMAIN_COMPACT
> >
> >
>
> Reviewed-by: Laszlo Ersek <lersek@redhat.com>

Thanks all

Pushed as  86ad762fa7a5..7551529ce104

-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#47207): https://edk2.groups.io/g/devel/message/47207
Mute This Topic: https://groups.io/mt/34117235/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-