Skip to content

arm: rpi: Increase headroom available to kernel image when relocated

Martyn Welch requested to merge wip/martyn/rpi-kernel-headroom into apertis/v2025dev3

We are seeing the following issue booting when moving to the v6.8.x kernel releases:

Moving Image from 0x80000 to 0x200000, end=2600000
## Flattened Device Tree blob at 02600000
   Booting using the fdt blob at 0x2600000
ERROR: FDT image overlaps OS image (OS=0x200000..0x2600000)

This is a result of the kernel images now reporting a size of 36MB and just hitting the offset used for the DTB when the kernel is relocated to a 2MB boundary (as is required for booting).

The kernel is being loaded at 0x80000 on the assumption that the kernel image would be compressed. Our kernel isn't compressed, so copy to the required boot location to avoid the need to relocate.

This frees up 1.5MB before the kernel image, so shift the PXE and script load locations to before the kernel. Shift up the DTB and initrd allocations to increase the kernel allocation to 50MB, giving headroom for the kernel image to grow.

Signed-off-by: Martyn Welch martyn.welch@collabora.com

Edited by Martyn Welch

Merge request reports