mirror of
https://github.com/Stichting-MINIX-Research-Foundation/u-boot.git
synced 2025-09-13 14:06:07 -04:00
ARM: tegra: use standard variables to define load addresses
Currently, Tegra's default environment uses non-standard variables to define where boot scripts should load the kernel, FDT, and initrd. This change both changes the variable names to match those described in U-Boot's README, and shuffles their values around a little so that the values make a little more sense; see comments in the patch for rationale behind the values chosen. Note that this patch does remove the old non-standard variable "fdt_load" from the default environment, so this patch requires people to change their boot scripts. Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
This commit is contained in:
parent
7f1b767aea
commit
938176a482
@ -95,8 +95,6 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#define BOOTCMDS_COMMON \
|
#define BOOTCMDS_COMMON \
|
||||||
"scriptaddr=0x400000\0" \
|
|
||||||
\
|
|
||||||
"rootpart=1\0" \
|
"rootpart=1\0" \
|
||||||
\
|
\
|
||||||
"script_boot=" \
|
"script_boot=" \
|
||||||
@ -140,9 +138,36 @@
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Memory layout for where various images get loaded by boot scripts:
|
||||||
|
*
|
||||||
|
* scriptaddr can be pretty much anywhere that doesn't conflict with something
|
||||||
|
* else. Put it above BOOTMAPSZ to eliminate conflicts.
|
||||||
|
*
|
||||||
|
* kernel_addr_r must be within the first 128M of RAM in order for the
|
||||||
|
* kernel's CONFIG_AUTO_ZRELADDR option to work. Since the kernel will
|
||||||
|
* decompress itself to 0x8000 after the start of RAM, kernel_addr_r
|
||||||
|
* should not overlap that area, or the kernel will have to copy itself
|
||||||
|
* somewhere else before decompression. Similarly, the address of any other
|
||||||
|
* data passed to the kernel shouldn't overlap the start of RAM. Pushing
|
||||||
|
* this up to 16M allows for a sizable kernel to be decompressed below the
|
||||||
|
* compressed load address.
|
||||||
|
*
|
||||||
|
* fdt_addr_r simply shouldn't overlap anything else. Choosing 32M allows for
|
||||||
|
* the compressed kernel to be up to 16M too.
|
||||||
|
*
|
||||||
|
* ramdisk_addr_r simply shouldn't overlap anything else. Choosing 33M allows
|
||||||
|
* for the FDT/DTB to be up to 1M, which is hopefully plenty.
|
||||||
|
*/
|
||||||
|
#define MEM_LAYOUT_ENV_SETTINGS \
|
||||||
|
"scriptaddr=0x10000000\0" \
|
||||||
|
"kernel_addr_r=0x01000000\0" \
|
||||||
|
"fdt_addr_r=0x02000000\0" \
|
||||||
|
"ramdisk_addr_r=0x02100000\0" \
|
||||||
|
|
||||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||||
TEGRA_DEVICE_SETTINGS \
|
TEGRA_DEVICE_SETTINGS \
|
||||||
"fdt_load=0x01000000\0" \
|
MEM_LAYOUT_ENV_SETTINGS \
|
||||||
BOOTCMDS_COMMON
|
BOOTCMDS_COMMON
|
||||||
|
|
||||||
/* overrides for SPL build here */
|
/* overrides for SPL build here */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user