When I try @swarren's script as is. The Uboot displays the following:PhilE wrote:Reading the link swarren sent, u-boot sets "fdt_addr" to the DT address passed to the kernel. "fdt_addr_r" is the old constant value of 0x100, which is where the kernel used to put its ATAGs or DTB. Unfortunately the gap from 0x100 to where the kernel starts is only 32KB, and the decompressor seems to use memory starting at 0x4000, leaving only 16KB for the DTB - not enough in many cases, so the RPi firmware switched to loading the DTB high above the kernel and the u-boot startup code now stores the value passed to the "kernel" in the variable "fdt_addr".
Does u-boot let you print output from your script? I would suggest displaying "fdt_addr" and "fdt_addr_r" to see if they are sensible.
Code: Select all
Warning: start.elf did not pass ATAGor FDT parameters Net: Net Initialization Skipped No ethernet found. starting USB... USB0: core Release: 2.80a scanning bus 0 for devices... unable to get device descriptor (error=-22) 6 USB Devices(s) found scanning usb for storage devices... 0 Storage Devices(s) found scanning usb for ehternet devices... Error: sms0 address not set. Warning: failed to set MAC address 1 Ethernet Devices(s) found Hit any key to stop autoboot: 0 switch to partitions #0, OK mmc0 is current device Found U-Boot script /boot.scr reading /boot.scr 272 bytes read in 27 ms ## Executing script at 02000000 reading kernel7.img 4235224 bytes read in 732 ms Kernel image @ 0x1000000 [ 0x000000 - 0x409fd8] Starting kernel ...