]> git.sur5r.net Git - u-boot/commitdiff
microblaze: Support stack protection feature
authorMichal Simek <michal.simek@xilinx.com>
Tue, 4 Nov 2014 12:30:14 +0000 (13:30 +0100)
committerMichal Simek <michal.simek@xilinx.com>
Wed, 21 Jan 2015 09:33:07 +0000 (10:33 +0100)
Ensure that stack didn't rewrite important part
of u-boot.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
arch/microblaze/cpu/start.S

index f46603142d8567ded74eafbe7a630592628bdb0b..84c29e54091e68819891f165a30d6c0eeac1c285 100644 (file)
@@ -23,11 +23,15 @@ _start:
 
        mts     rmsr, r0        /* disable cache */
 
+       addi    r8, r0, __end
+       mts     rslr, r8
 #if defined(CONFIG_SPL_BUILD)
        addi    r1, r0, CONFIG_SPL_STACK_ADDR
+       mts     rshr, r1
        addi    r1, r1, -4      /* Decrement SP to top of memory */
 #else
        addi    r1, r0, CONFIG_SYS_INIT_SP_OFFSET
+       mts     rshr, r1
        addi    r1, r1, -4      /* Decrement SP to top of memory */
 
        /* Find-out if u-boot is running on BIG/LITTLE endian platform