[U-Boot] [PATCH 1/2] rpi: Fix fdt_high & initrd_high for 64-bit builds

Tuomas Tynkkynen
2018-04-20T10:03:48Z

The magic value that disables relocation is dependent on the CPU word
size, so the current 'ffffffff' is doing the wrong thing on aarch64.

Signed-off-by: Tuomas Tynkkynen <tuomas@tuxera.com>
---
include/configs/rpi.h | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/include/configs/rpi.h b/include/configs/rpi.h
index 325e52a019..f1189a27f3 100644
--- a/include/configs/rpi.h
+++ b/include/configs/rpi.h
@@ -91,6 +91,14 @@
"stdout=serial,vidconsole\0" \
"stderr=serial,vidconsole\0"

+#ifdef CONFIG_ARM64
+#define FDT_HIGH "ffffffffffffffff"
+#define INITRD_HIGH "ffffffffffffffff"
+#else
+#define FDT_HIGH "ffffffff"
+#define INITRD_HIGH "ffffffff"
+#endif
+
/*
* Memory layout for where various images get loaded by boot scripts:
*
@@ -122,8 +130,8 @@
* for any boot script to be up to 1M, which is hopefully plenty.
*/
#define ENV_MEM_LAYOUT_SETTINGS \
- "fdt_high=ffffffff\0" \
- "initrd_high=ffffffff\0" \
+ "fdt_high=" FDT_HIGH "\0" \
+ "initrd_high=" INITRD_HIGH "\0" \
"fdt_addr_r=0x00000100\0" \
"pxefile_addr_r=0x00100000\0" \
"kernel_addr_r=0x01000000\0" \
--
2.16.3