arm: ls102xa: Set fdt_high and initrd_high to the value of 0xffffffff
PATCH 1/1 arm: ls102xa: Set fdt_high and initrd_high to the value of 0xffffffff
As 3G/1G user/kernel memory split is used on LS1021A, the Linux kernel fails to access the device tree blob on boot. The reason is that u-boot relocates the device tree blob into high memory when booting the kernel and the kernel is unable to access the blob.
To avoid this issue, fdt_high is set to the value of 0xffffffff. The device tree blob will not get relocated and is still in low memory to make it accessible to the kernel.
For the same reason, initrd_high is set to the value of 0xffffffff too.
--- include/configs/ls1021atwr.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-)
include/configs/ls1021atwr.h +4 -4
@@ -429,13 +429,13 @@#ifdef CONFIG_LPUART #define CONFIG_EXTRA_ENV_SETTINGS \ "bootargs=root=/dev/ram0 rw console=ttyLP0,115200\0" \ - "initrd_high=0xcfffffff\0" \ - "fdt_high=0xcfffffff\0" + "initrd_high=0xffffffff\0" \ + "fdt_high=0xffffffff\0"#else #define CONFIG_EXTRA_ENV_SETTINGS \ "bootargs=root=/dev/ram0 rw console=ttyS0,115200\0" \ - "initrd_high=0xcfffffff\0" \ - "fdt_high=0xcfffffff\0" + "initrd_high=0xffffffff\0" \ + "fdt_high=0xffffffff\0"#endif /*
Signature · 1 line
2.1.0.27.g96db324
PATCH 1/1 arm: ls102xa: Set fdt_high and initrd_high to the value of 0xffffffff
Quoted 5 lines · Alison Wang
As 3G/1G user/kernel memory split is used on LS1021A, the Linux kernel fails to access the device tree blob on boot. The reason is that u-boot relocates the device tree blob into high memory when booting the kernel and the kernel is unable to access the blob.
Quoted 8 lines
To avoid this issue,
fdt_highis set to the value of0xffffffff. The device tree blob will not get relocated and is still in low memory to make it accessible to the kernel.For the same reason,
initrd_highis set to the value of0xfffffffftoo.Signed-off-by Alison Wang <[email protected]>---
Applied to u-boot-fsl-qoriq. Awaiting upstream. Thanks.
York