diff options
Diffstat (limited to 'arch/arm/kernel')
-rw-r--r-- | arch/arm/kernel/entry-armv.S | 4 | ||||
-rw-r--r-- | arch/arm/kernel/entry-header.S | 7 |
2 files changed, 6 insertions, 5 deletions
diff --git a/arch/arm/kernel/entry-armv.S b/arch/arm/kernel/entry-armv.S index a99e686c0b83..cfb5cf5e48fc 100644 --- a/arch/arm/kernel/entry-armv.S +++ b/arch/arm/kernel/entry-armv.S | |||
@@ -269,6 +269,8 @@ __pabt_svc: | |||
269 | .word __temp_und | 269 | .word __temp_und |
270 | .LCabt: | 270 | .LCabt: |
271 | .word __temp_abt | 271 | .word __temp_abt |
272 | .LCcralign: | ||
273 | .word cr_alignment | ||
272 | #ifdef MULTI_ABORT | 274 | #ifdef MULTI_ABORT |
273 | .LCprocfns: | 275 | .LCprocfns: |
274 | .word processor | 276 | .word processor |
@@ -311,7 +313,7 @@ __pabt_svc: | |||
311 | @ | 313 | @ |
312 | @ Enable the alignment trap while in kernel mode | 314 | @ Enable the alignment trap while in kernel mode |
313 | @ | 315 | @ |
314 | alignment_trap r7, r0, __temp_\sym | 316 | alignment_trap r0 |
315 | 317 | ||
316 | @ | 318 | @ |
317 | @ Clear FP to mark the first stack frame | 319 | @ Clear FP to mark the first stack frame |
diff --git a/arch/arm/kernel/entry-header.S b/arch/arm/kernel/entry-header.S index a3d40a0e2b04..afef21273963 100644 --- a/arch/arm/kernel/entry-header.S +++ b/arch/arm/kernel/entry-header.S | |||
@@ -59,11 +59,10 @@ | |||
59 | mov \rd, \rd, lsl #13 | 59 | mov \rd, \rd, lsl #13 |
60 | .endm | 60 | .endm |
61 | 61 | ||
62 | .macro alignment_trap, rbase, rtemp, sym | 62 | .macro alignment_trap, rtemp |
63 | #ifdef CONFIG_ALIGNMENT_TRAP | 63 | #ifdef CONFIG_ALIGNMENT_TRAP |
64 | #define OFF_CR_ALIGNMENT(x) cr_alignment - x | 64 | ldr \rtemp, .LCcralign |
65 | 65 | ldr \rtemp, [\rtemp] | |
66 | ldr \rtemp, [\rbase, #OFF_CR_ALIGNMENT(\sym)] | ||
67 | mcr p15, 0, \rtemp, c1, c0 | 66 | mcr p15, 0, \rtemp, c1, c0 |
68 | #endif | 67 | #endif |
69 | .endm | 68 | .endm |