[U-Boot-Users] [rfc] warning about overlapping regions whenbooting with bootm

Robin Getz rgetz at blackfin.uclinux.org
Sun Feb 17 23:55:00 CET 2008


On Sun 17 Feb 2008 17:09, Wolfgang Denk pondered:
> In message <200802171529.23434.rgetz at blackfin.uclinux.org> you wrote:
> >
> > I always thought that when decompressing a uImage, that the entry 
> > point was stored in the header, (at the beginning of the file) and
> > was read after the decompression took place - is that wrong?
> 
> I'm not sure what all the different architectures do,  but  at  least
> for PowerPC, ARM and MIPS I know that one of the very first things we
> do in the bootm code is to create a local copy of the image header.
> 
> Search for 'memcpy.*header'.

What I saw that in common/cmd_bootm.c:do_bootm() there is a:

  /* Copy header so we can blank CRC field for re-calculation */
  memmove (&header, (char *)addr, sizeof(image_header_t));

but this seems only to be used in the calc/checking of the CRC.

When I look at 
            do_bootm_linux  (cmdtp, flag, argc, argv,
                             addr, len_ptr, verify);

I saw it not being used, and what I missed was that header is a global (and 
doesn't need to be passed to do_bootm_linux as a parameter).

Thanks & sorry for the noise.

-Robin




More information about the U-Boot mailing list