ARM: 6999/1: head, zImage: Always Enter the kernel in ARM state
authorDave Martin <dave.martin@linaro.org>
Wed, 13 Jul 2011 14:53:30 +0000 (15:53 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Tue, 19 Jul 2011 11:00:53 +0000 (12:00 +0100)
commit540b573875bd26dfe39aa18d22dc195f275fc0df
treed4fc0c012ef109d601e28814b3806eb44ce357c7
parentc7e89b16eb90e7bdf0d71bd5ba265ce8d424f30b
ARM: 6999/1: head, zImage: Always Enter the kernel in ARM state

Currently, the documented kernel entry requirements are not
explicit about whether the kernel should be entered in ARM or
Thumb, leading to an ambiguitity about how to enter Thumb-2
kernels.  As a result, the kernel is reliant on the zImage
decompressor to enter the kernel proper in the correct instruction
set state.

This patch changes the boot entry protocol for head.S and Image to
be the same as for zImage: in all cases, the kernel is now entered
in ARM.

Documentation/arm/Booting is updated to reflect this new policy.

A different rule will be needed for Cortex-M class CPUs as and when
support for those lands in mainline, since these CPUs don't support
the ARM instruction set at all: a note is added to the effect that
the kernel must be entered in Thumb on such systems.

Signed-off-by: Dave Martin <dave.martin@linaro.org>
Acked-by: Nicolas Pitre <nicolas.pitre@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Documentation/arm/Booting
arch/arm/boot/compressed/head.S
arch/arm/kernel/head-nommu.S
arch/arm/kernel/head.S