[PATCH 0/4] bootm: Handle compressed arm64 images with bootm

Simon Glass sjg at chromium.org
Sun Nov 5 21:06:19 CET 2023


Hi,

On Sun, 5 Nov 2023 at 20:05, Simon Glass <sjg at chromium.org> wrote:
>
> This little series corrects a problem I noticed with arm64 images,
> where the kernel is not recognised:
>
>    ## Loading kernel from FIT Image at 10000000 ...
>       Using 'conf-930' configuration
>       Verifying Hash Integrity ... OK
>       Trying 'kernel' kernel subimage
>         Description:  Linux-6.6.0-rc7-next-20231024-00003-g259c196f194c
>         Type:         Kernel Image (no loading done)
>         Compression:  gzip compressed
>         Data Start:   0x10000138
>         Data Size:    13667956 Bytes = 13 MiB
>       Verifying Hash Integrity ... OK
>    Bad Linux ARM64 Image magic!
>
> The problem is that the arm64 magic is checked before the image is
> decompressed.
>
> Another issue is that the load address is read from the 'load' property
> even with a kernel_noload image. This means that the kernel is loaded
> to address 0, which may not be valid on the board. We can use the
> kernel_addr_r environment variable instead.
>
> A patch is included to show the kernel load-address, so it is easy to
> see what is going on.
>
>
> Simon Glass (4):
>   bootm: Allow ignoring the load address with kernel_noload
>   bootm: Move arm64-image processing later
>   image: Show the load address when decompressing
>   image: Correct load_bug typo
>
>  boot/bootm.c    | 61 ++++++++++++++++++++++++++++++-------------------
>  boot/image.c    | 13 +++++++----
>  include/image.h |  2 +-
>  3 files changed, 48 insertions(+), 28 deletions(-)
>
> --
> 2.42.0.869.gea05f2083d-goog
>

This series has a few problems still, but I am sending it now since I
believe it fixes a real problem on arm64. I will tidy it up soon.

Regards,
Simon


More information about the U-Boot mailing list