summaryrefslogtreecommitdiff
path: root/arch/microblaze/kernel/head.S
diff options
context:
space:
mode:
authorMichal Simek <michal.simek@xilinx.com>2013-08-23 09:16:50 +0400
committerMichal Simek <michal.simek@xilinx.com>2014-01-27 14:26:32 +0400
commit34b9c07a3b644760159571ee99d0f7fc67b83a8d (patch)
tree2902a75c08c09fba499e7307bd0ff7aa56432189 /arch/microblaze/kernel/head.S
parent17578ea198a9b9210ba7846029624d57be6acea2 (diff)
downloadlinux-34b9c07a3b644760159571ee99d0f7fc67b83a8d.tar.xz
microblaze: Disable stack protection from bootloader
Microblaze without MMU can use stack protection in bootloader and kernel should clear this setting ASAP. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
Diffstat (limited to 'arch/microblaze/kernel/head.S')
-rw-r--r--arch/microblaze/kernel/head.S4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/microblaze/kernel/head.S b/arch/microblaze/kernel/head.S
index 817b7eec95b6..b7fb0438458c 100644
--- a/arch/microblaze/kernel/head.S
+++ b/arch/microblaze/kernel/head.S
@@ -64,6 +64,10 @@ real_start:
#endif
mts rmsr, r0
+/* Disable stack protection from bootloader */
+ mts rslr, r0
+ addi r8, r0, 0xFFFFFFF
+ mts rshr, r8
/*
* According to Xilinx, msrclr instruction behaves like 'mfs rX,rpc'
* if the msrclr instruction is not enabled. We use this to detect