26e5ca93dd
The code which makes up the zImage header intends to leave a 32-byte gap followed by a branch to the real entry point, a magic number, and a word containing the absolute entry point address. This gets messed up with with CONFIG_THUMB2_KERNEL, because the size of the initial padding NOPs changes. Instead, the header can be made fully compatible by restoring it to ARM. In the Thumb-2 case, we can replace the initial NOPs with a sequence which switches to Thumb and jumps to the real entry point. As a consequence, the zImage entry point is now always ARM, so no special magic is needed any more for the uImage rules in the Thumb-2 case. Signed-off-by: Dave Martin <dave.martin@linaro.org> Acked-by: Catalin Marinas <catalin.marinas@arm.com> Acked-by: Nicolas Pitre <nicolas.pitre@linaro.org> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> |
||
---|---|---|
.. | ||
.gitignore | ||
big-endian.S | ||
decompress.c | ||
head-sa1100.S | ||
head-shark.S | ||
head-sharpsl.S | ||
head-xscale.S | ||
head.S | ||
ll_char_wr.S | ||
Makefile | ||
misc.c | ||
ofw-shark.c | ||
piggy.gzip.S | ||
piggy.lzma.S | ||
piggy.lzo.S | ||
vmlinux.lds.in |