
Booting Ubuntu Impish showed the following output:
relocaddr = 0x00000000fff60000
Loading Ramdisk to fa118000, end fffff19d ...
The initrd is overwriting the U-Boot binary. Booting fails.
There is no need to copy the initrd from $ramdisk_addr_r. Set init_high = ~0UL to use zero copy. Do the same for the device tree.
Same for the devicetree.
Signed-off-by: Heinrich Schuchardt heinrich.schuchardt@canonical.com --- v2: Don't copy fdt either. --- include/configs/sifive-unmatched.h | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/include/configs/sifive-unmatched.h b/include/configs/sifive-unmatched.h index f68d7d7676..69a4eb2f2a 100644 --- a/include/configs/sifive-unmatched.h +++ b/include/configs/sifive-unmatched.h @@ -59,6 +59,8 @@ "name=system,size=-,bootable,type=${type_guid_gpt_system};"
#define CONFIG_EXTRA_ENV_SETTINGS \ + "fdt_high=0xffffffffffffffff\0" \ + "initrd_high=0xffffffffffffffff\0" \ "kernel_addr_r=0x84000000\0" \ "fdt_addr_r=0x88000000\0" \ "scriptaddr=0x88100000\0" \