[U-Boot-Users] [PATCH] Fix the condition to detect if an image is already in its place

Uwe Kleine-König ukleinek at informatik.uni-freiburg.de
Thu Mar 15 23:35:14 CET 2007

Hello Wolfgang,

Wolfgang Denk wrote:
> In message <20070315214229.GB27920 at informatik.uni-freiburg.de> you wrote:
> > Before moving the image was skipped if the header started at the load address,
> > but it's the data that should be at this address.
> > 
> > Signed-off-by: Uwe Kleine-König <ukleinek at informatik.uni-freiburg.de>
> > ---
> > I didn't test that change yet but I saw it fail without that change.
> I reject your patch. It breaks booting XIP images on PowerPC.
> See http://www.denx.de/wiki/view/DULG/ConfigureLinuxForXIP for
> details.
Do you admit that the first branch of the if I changed asserts the
header to start at ih_load and the other asserts the data to start at
ih_load?  So if you have an XIP image in RAM starting at a wrong
address, booting will fail.

So in my eyes the correct fix is to take the patch I sent + fix Linux
not to skip the header.

BTW: I couldn't find this config item "Make a XIP (eXecute in Place)
kernel", neither in Linus nor in your tree:

	zeisberg at cassiopeia:~/gsrc/linux-2.6$ for tree in denx linus; do git describe remotes/$tree/master; git grep "Make a XIP" remotes/$tree/master; done

And even

	git branch -r | grep denx | xargs git grep "Make a XIP"

didn't return anything.

Best regards

Uwe Kleine-König

primes where sieve (p:xs) = [ x | x<-xs, x `rem` p /= 0 ]; \
primes = map head (iterate sieve [2..])

More information about the U-Boot mailing list