
Hi Peter,
On Wed, 11 Dec 2024 at 09:27, Peter Robinson pbrobinson@gmail.com wrote:
On Mon, 9 Dec 2024 at 19:55, Simon Glass sjg@chromium.org wrote:
Set this option so that all boot images stay within the bottom 512MB of memory. This should allow us to drop the fdt_high and initrd_high options.
How does this work for a device with < 256Mb of RAM? There's a number of the original RPi series that have 256Mb of RAM and that equates to less than that due to reservations for the vendor firmware.
Looking at boot_relocate_fdt(), this is just a maximum, and lmb is used to allocate the FDT / cmdline. So this patch shouldn't affect that.
But the later patch to move the ramdisk up will cause problems. Based on the comment, a 256MB (I assume you mean) device can have as little as 64MB of RAM available to the ARM core, which is not enough to load a ramdisk from the new start-address of about 90MB.
I found an old rpi1 which I could hook up to my lab, perhaps. Could you point me to a distro-image that boots OK on that, ideally with only 64MB available?
Signed-off-by: Simon Glass sjg@chromium.org Reviewed-by: Tom Rini trini@konsulko.com Suggested-by: Tom Rini trini@konsulko.com
Changes in v3:
- Add to the existing comment block
Changes in v2:
- Add new patch to set bootm_size
board/raspberrypi/rpi/rpi.env | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/board/raspberrypi/rpi/rpi.env b/board/raspberrypi/rpi/rpi.env index 30228285edd..a327fccc77f 100644 --- a/board/raspberrypi/rpi/rpi.env +++ b/board/raspberrypi/rpi/rpi.env @@ -60,7 +60,12 @@ dfu_alt_info+=zImage fat 0 1
- 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.
- Limit bootm_size to 512MB so that all boot images stay within the bottom
*/
- 512MB of memory
+bootm_size=0x20000000
#ifdef CONFIG_ARM64 fdt_high=ffffffffffffffff initrd_high=ffffffffffffffff -- 2.34.1