ArmVirtPkg/ArmVirtQemuKernel: increase slack space for DTB

The relocatable build of ArmVirtQemuKernel is designed to be executed
from RAM, and contains some scratch memory at the start of the image
to use as a stack very early on, and to preserve the DTB image received
from QEMU while it discovers and initializes memory.

It turns out that 8 KB is a bit on the small side here, especially when
executing with secure world emulation enabled, in which case there are
additional nodes present.

So increase the slack space to 32 KB.

While at it, remove a stale Xen reference that was copy/pasted when this
file was created.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Acked-by: Laszlo Ersek <lersek@redhat.com>
This commit is contained in:
Ard Biesheuvel 2017-04-04 15:40:01 +01:00
parent 83ae7589b0
commit 4d2ea2616e
1 changed files with 6 additions and 6 deletions

View File

@ -52,15 +52,15 @@ NumBlocks = 0x200
################################################################################ ################################################################################
# #
# Implement the Linux kernel header layout so that the Xen loader will identify # Implement the Linux kernel header layout so that the loader will identify
# it as something bootable, and execute it with a FDT pointer in x0 or r2. # it as something bootable, and execute it with a FDT pointer in x0 or r2.
# This area will be reused to store a copy of the FDT so round it up to 8 KB. # This area will be reused to store a copy of the FDT so round it up to 32 KB.
# #
0x00000000|0x00002000 0x00000000|0x00008000
DATA = { DATA = {
!if $(ARCH) == AARCH64 !if $(ARCH) == AARCH64
0x01, 0x00, 0x00, 0x10, # code0: adr x1, . 0x01, 0x00, 0x00, 0x10, # code0: adr x1, .
0xff, 0x07, 0x00, 0x14, # code1: b 0x2000 0xff, 0x1f, 0x00, 0x14, # code1: b 0x8000
0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, # text_offset: 512 KB
0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, # image_size: 2 MB
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, # flags
@ -79,7 +79,7 @@ DATA = {
0x00, 0x00, 0xa0, 0xe1, # nop 0x00, 0x00, 0xa0, 0xe1, # nop
0x00, 0x00, 0xa0, 0xe1, # nop 0x00, 0x00, 0xa0, 0xe1, # nop
0xf6, 0x07, 0x00, 0xea, # b 0x2000 0xf6, 0x1f, 0x00, 0xea, # b 0x8000
0x18, 0x28, 0x6f, 0x01, # magic 0x18, 0x28, 0x6f, 0x01, # magic
0x00, 0x00, 0x00, 0x00, # start 0x00, 0x00, 0x00, 0x00, # start
0x00, 0x00, 0x20, 0x00, # image size: 2 MB 0x00, 0x00, 0x20, 0x00, # image size: 2 MB
@ -87,7 +87,7 @@ DATA = {
!endif !endif
} }
0x00002000|0x001fe000 0x00008000|0x001f8000
gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize gArmTokenSpaceGuid.PcdFvBaseAddress|gArmTokenSpaceGuid.PcdFvSize
FV = FVMAIN_COMPACT FV = FVMAIN_COMPACT