[U-Boot] [PATCH] image: Allow images to indicate they're loadable at any address
Simon Glass
sjg at chromium.org
Mon Oct 31 22:20:31 CET 2011
On Mon, Oct 24, 2011 at 6:59 AM, Stephen Warren <swarren at nvidia.com> wrote:
> The legacy uImage format includes an absolute load and entry-
> point address. When presented with a uImage in memory that
> isn't loaded at the address in the image's load address,
> U-Boot will relocate the image to its address in the header.
>
> Some payloads can actually be loaded and used at any arbitrary
> address. An example is an ARM Linux kernel zImage file. This
> is useful when sharing a single zImage across multiple boards
> with different memory layouts, or U-Boot builds with different
> ${load_addr} since sharing a single absolute load address may
> not be possible.
>
> With this config option enabled, an image header may contain a
> load address of -1/0xffffffff. This indicates the image can
> operate at any load address, and U-Boot will avoid automtically
> copying it anywhere. In this case, the entry-point field is
> specified relative to the start of the image payload.
>
> Signed-off-by: Stephen Warren <swarren at nvidia.com>
Tested-by: Simon Glass <sjg at chromium.org>
> ---
> Wolfgang,
>
> This is an much simpler and less invasive alternative to my previous
> IH_TYPE_KERNEL_REL patch. If it's OK, you can ignore that patch.
>
> u-boot.bin sizes for Tegra Seaboard without/with this config option on:
>
> text data bss dec hex filename
> 165858 3565 217016 386439 5e587 ./u-boot
>
> with:
>
> text data bss dec hex filename
> 165950 3565 217012 386527 5e5df ./u-boot
>
> README | 23 +++++++++++++++++++++++
> common/cmd_bootm.c | 4 ++++
> common/image.c | 27 +++++++++++++++++++++++++++
> include/image.h | 4 ++++
> 4 files changed, 58 insertions(+), 0 deletions(-)
>
More information about the U-Boot
mailing list