ARM: consolidate last remaining open-coded alignment trap enable
authorRussell King <rmk+kernel@arm.linux.org.uk>
Sun, 13 Apr 2014 19:24:51 +0000 (20:24 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Mon, 2 Jun 2014 08:20:20 +0000 (09:20 +0100)
We can use the alignment_trap assembly macro here too.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/kernel/entry-armv.S
arch/arm/kernel/entry-common.S
arch/arm/kernel/entry-header.S

index cac5b88..cb6fa30 100644 (file)
@@ -344,7 +344,7 @@ ENDPROC(__pabt_svc)
        @
        @ Enable the alignment trap while in kernel mode
        @
-       alignment_trap r0
+       alignment_trap r0, .LCcralign
 
        @
        @ Clear FP to mark the first stack frame
index a2dcafd..7139d4a 100644 (file)
@@ -365,13 +365,7 @@ ENTRY(vector_swi)
        str     r0, [sp, #S_OLD_R0]             @ Save OLD_R0
 #endif
        zero_fp
-
-#ifdef CONFIG_ALIGNMENT_TRAP
-       ldr     ip, __cr_alignment
-       ldr     ip, [ip]
-       mcr     p15, 0, ip, c1, c0              @ update control register
-#endif
-
+       alignment_trap ip, __cr_alignment
        enable_irq
        ct_user_exit
        get_thread_info tsk
index 1420725..45a1df9 100644 (file)
@@ -37,9 +37,9 @@
 #endif
        .endm
 
-       .macro  alignment_trap, rtemp
+       .macro  alignment_trap, rtemp, label
 #ifdef CONFIG_ALIGNMENT_TRAP
-       ldr     \rtemp, .LCcralign
+       ldr     \rtemp, \label
        ldr     \rtemp, [\rtemp]
        mcr     p15, 0, \rtemp, c1, c0
 #endif