summaryrefslogtreecommitdiffstats
path: root/arch/arm/kernel/head-nommu.S
diff options
context:
space:
mode:
authorHyok S. Choi <hyok.choi@samsung.com>2006-09-28 21:46:34 +0900
committerRussell King <rmk+kernel@arm.linux.org.uk>2006-09-28 20:17:30 +0100
commit6afd6fae1d5f7e7129a10c4f3e32018966eeac1c (patch)
tree4b7470f0f771c4e97b18f83db0bd4ca3d529684b /arch/arm/kernel/head-nommu.S
parent0f45d7f36b766cb668cebfb5d4d2f67b4a8676ba (diff)
downloadblackbird-op-linux-6afd6fae1d5f7e7129a10c4f3e32018966eeac1c.tar.gz
blackbird-op-linux-6afd6fae1d5f7e7129a10c4f3e32018966eeac1c.zip
[ARM] nommu: confirms the CR_V bit in nommu mode
In nommu mode, the exception vector location depends on the platforms. Some of the implementations may have some special exception control forwarding method in their ROM/flash and for some of them has its own re-mapping mechanism by the h/w. This patch introduces a special configuration CONFIG_CPU_HIGH_VECTOR which turns on the CR_V bit in nommu mode. The CR_V bit is turned off by default. This feature depends on CP15 and does not supported by ARM740. Signed-off-by: Hyok S. Choi <hyok.choi@samsung.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/kernel/head-nommu.S')
-rw-r--r--arch/arm/kernel/head-nommu.S5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/arm/kernel/head-nommu.S b/arch/arm/kernel/head-nommu.S
index 698a537915dd..f359a189dcf2 100644
--- a/arch/arm/kernel/head-nommu.S
+++ b/arch/arm/kernel/head-nommu.S
@@ -77,6 +77,11 @@ __after_proc_init:
#ifdef CONFIG_CPU_ICACHE_DISABLE
bic r0, r0, #CR_I
#endif
+#ifdef CONFIG_CPU_HIGH_VECTOR
+ orr r0, r0, #CR_V
+#else
+ bic r0, r0, #CR_V
+#endif
mcr p15, 0, r0, c1, c0, 0 @ write control reg
#endif /* CONFIG_CPU_CP15 */
OpenPOWER on IntegriCloud