[PATCH 00/11] boot: Allow lmb-allocation of compression buffer with booti

ARM 'booti' images (as created by Linux 'make Image') typically need to be compressed. At present the decompression buffer is described by a pair of environment variables: kernel_comp_addr_r and kernel_comp_size This is quite inflexible, since the buffer size and location must be pre-set in the environment, before the OS size is known. For the EFI app, it is quite difficult to work with a fixed buffer. It is not in control of the memory map so it may be that the requested buffer address is not available. This series updates the boot implementation to allow the variables to be omitted, with lmb allocations done in this case. This resolves the problem in the EFI app, with kernels which come from extlinux.conf When the EFI app loads another app, a similar problem is present, but with the EFI bootmeth, also resolved in this series. Simon Glass (11): efi: Allocate the kernel buffer when running in the app boot: Add more debugging to bootm code boot: Add more debugging to image-baord and image-fdt boot: Read environment variables at start boot: Move compression-buffer handling to its own function boot: Add an OS-size field in bootm_info boot: Record the kernel size in pxe_utils boot: Check OS size when decompressing with booti boot: Support lmb reservation in resolve_os_comp_buf() boot: Correct a comment in image_setup_libfdt() boot: Emit an event just before starting the OS boot/bootm.c | 174 +++++++++++++++++++++++++++++++++++--------- boot/bootm_final.c | 10 +++ boot/bootmeth_efi.c | 25 ++++++- boot/image-board.c | 16 +++- boot/image-fdt.c | 5 +- boot/pxe_utils.c | 23 ++++-- cmd/booti.c | 1 + cmd/bootm.c | 1 + common/event.c | 1 + include/bootm.h | 18 +++++ include/event.h | 8 ++ include/pxe_utils.h | 2 + 12 files changed, 238 insertions(+), 46 deletions(-) -- 2.43.0 base-commit: c9dbf55855b3b0ca143e71e9204b74fc88117808 branch: loadm
participants (1)
-
Simon Glass