Hi Stephen, On Thu, Sep 20, 2012 at 3:20 PM, Stephen Warren <[email protected]> wrote: > From: Stephen Warren <[email protected]> > > 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 <[email protected]>
Acked-by: Simon Glass <[email protected]> > --- > include/configs/tegra-common-post.h | 31 ++++++++++++++++++++++++++++--- > 1 files changed, 28 insertions(+), 3 deletions(-) > > diff --git a/include/configs/tegra-common-post.h > b/include/configs/tegra-common-post.h > index 1e7aea9..048ecbb 100644 > --- a/include/configs/tegra-common-post.h > +++ b/include/configs/tegra-common-post.h > @@ -95,8 +95,6 @@ > #endif > > #define BOOTCMDS_COMMON \ > - "scriptaddr=0x400000\0" \ > - \ > "rootpart=1\0" \ > \ > "script_boot=" \ > @@ -140,9 +138,36 @@ > > #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 Does this work for T30? I suppose that's for another day anyway. > + * 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" \ I'm not sure you need the 0x since they should be hex anyway. But it does no harm and I'm not sure if there is a convention for it. > + > #define CONFIG_EXTRA_ENV_SETTINGS \ > TEGRA_DEVICE_SETTINGS \ > - "fdt_load=0x01000000\0" \ > + MEM_LAYOUT_ENV_SETTINGS \ > BOOTCMDS_COMMON > > /* overrides for SPL build here */ > -- > 1.7.0.4 > Regards, Simon _______________________________________________ U-Boot mailing list [email protected] http://lists.denx.de/mailman/listinfo/u-boot

