[PATCH v3 1/7] arm: juno: Fix Juno address variables
Tom Rini
trini at konsulko.com
Thu May 7 15:03:26 CEST 2020
On Mon, Apr 27, 2020 at 07:17:58PM +0100, Andre Przywara wrote:
> The U-Boot documentation explains that variables ending with "_r" hold
> addresses in DRAM, while those without that ending point to flash/ROM.
> The default variables for the Juno board pointing to the kernel and DTB
> load addresses were not complying with this scheme: they lack the
> extension, but point to DRAM. This is particularly confusing since the
> Juno board features parallel NOR flash, so there *is* a memory mapped
> NOR address holding a DTB, for instance.
>
> Fix the variables to use the proper names, changing initrd_addr to
> ramdisk_addr_r on the way, which seems to be more prevelant and
> documented. On the way adjust the FDT load address to be situated
> *before* the kernel, since users happened to overwrite the DTB by the
> kernel clearing its .BSS section during initialisation.
> Also remove the fdt_high and initrd_high variables (which were set
> to -1), to allow U-Boot moving those images around.
>
> This should avoid many problems in the future, but breaks loading
> Linux kernels < v4.2, since they expect the DTB to be loaded in the same
> 512MB region as the kernel. If you need to load such an old kernel,
> please set fdt_high to either 0xffffffffffffffff or 0xa0000000 (if you
> load the kernel to the beginning of DRAM).
>
> That fixes loading debug kernels, which happened to overwrite the DTB on
> certain setups.
>
> Signed-off-by: Andre Przywara <andre.przywara at arm.com>
> Reviewed-by: Simon Glass <sjg at chromium.org>
Applied to u-boot/master, thanks!
--
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200507/498a6e24/attachment.sig>
More information about the U-Boot
mailing list