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

Alexander Graf
2018-05-24T07:51:57Z

On 20.04.18 12:03, Tuomas Tynkkynen wrote:
> 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>

The BCM283x series of SOCs is limited to 32bit address space, so I don't
quite see why the current (int)-1 is wrong?

Alex

> ---
> 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" \
>