image: android: handle default kernel address
authorMaxime Ripard <maxime.ripard@free-electrons.com>
Fri, 24 Apr 2015 10:53:12 +0000 (12:53 +0200)
committerTom Rini <trini@konsulko.com>
Fri, 8 May 2015 21:24:17 +0000 (17:24 -0400)
commit87f02d5aeef53bc2028b433a4c02ef2b2eea8c87
treed1b88574aefe8312b3aaf7ac9b0a07962f6b67e8
parenta67da8fd67911ef87f296622b3758d04b1b76e2c
image: android: handle default kernel address

The two tools that create android boot images, mkbootimg and the fastboot
client, set the kernel address by default to 0x10008000.

U-boot always honors this field, and will try to relocate the kernel to
whatever value is set in the header, which won't be mapped to the actual RAM on
most platforms, resulting in the kernel obviously not booting.

All the targets in U-Boot right now will download the android boot image to
CONFIG_SYS_LOAD_ADDR, which means that it will already have been downloaded to
some location that is suitable for execution.

In order to have the kernel booting even with the default boot image kernel
address, if that address is used, just execute the kernel where it is.

Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com>
common/image-android.c