Applied
On Fri, 20 Dec 2024 at 00:35, Simon Glass <s...@chromium.org> wrote: > > The existing values don't provide for decompressing an arm64 boot-image. > Add those values and move things apart a bit so that a 50MB kernel can be > accommodated. > > Signed-off-by: Simon Glass <s...@chromium.org> > --- > > (no changes since v3) > > Changes in v3: > - Update the comment block with the new values, including compression > > board/raspberrypi/rpi/rpi.env | 27 ++++++++++++++++----------- > 1 file changed, 16 insertions(+), 11 deletions(-) > > diff --git a/board/raspberrypi/rpi/rpi.env b/board/raspberrypi/rpi/rpi.env > index 9b9fad82828..9ac9d6768ca 100644 > --- a/board/raspberrypi/rpi/rpi.env > +++ b/board/raspberrypi/rpi/rpi.env > @@ -48,28 +48,33 @@ dfu_alt_info+=zImage fat 0 1 > * > * scriptaddr and pxefile_addr_r can be pretty much anywhere that doesn't > * conflict with something else. Reserving 1M for each of them at > - * 0x02400000-0x02500000 and 0x02500000-0x02600000 should be plenty. > + * 0x05400000-0x05500000 and 0x05500000-0x05600000 should be plenty. > * > * On ARM, both the DTB and any possible initrd must be loaded such that they > * fit inside the lowmem mapping in Linux. In practice, this usually means > not > * more than ~700M away from the start of the kernel image but this number > can > * be larger OR smaller depending on e.g. the 'vmalloc=xxxM' command line > * parameter given to the kernel. So reserving memory from low to high > - * satisfies this constraint again. Reserving 1M at 0x02600000-0x02700000 for > - * the DTB leaves rest of the free RAM to the initrd starting at 0x02700000. > - * Even with the smallest possible CPU-GPU memory split of the CPU getting > - * only 64M, the remaining 25M starting at 0x02700000 should allow quite > - * large initrds before they start colliding with U-Boot. > + * satisfies this constraint again. Reserving 1M at 0x05600000-0x05700000 for > + * the DTB leaves rest of the free RAM to the initrd starting at 0x05700000. > + * This means that the board must have at least 128MB of RAM available to > + * U-Boot, more if the initrd is large. > * > - * Limit bootm_size to 512MB so that all boot images stay within the bottom > + * For compressed kernels, the maximum size is just under 32MB, with an area > for > + * decompression at 0x02000000 with space for 52MB, which is plenty for > current > + * kernels. > + * > + * limit bootm_size to 512MB so that all boot images stay within the bottom > * 512MB of memory > */ > bootm_size=0x20000000 > > kernel_addr_r=0x00080000 > -scriptaddr=0x02400000 > -pxefile_addr_r=0x02500000 > -fdt_addr_r=0x02600000 > -ramdisk_addr_r=0x02700000 > +kernel_comp_addr_r=0x02000000 > +kernel_comp_size=0x03400000 > +scriptaddr=0x05400000 > +pxefile_addr_r=0x05500000 > +fdt_addr_r=0x05600000 > +ramdisk_addr_r=0x05700000 > > boot_targets=mmc usb pxe dhcp > -- > 2.34.1 >