[ARM] Move IRQ enable after coprocessor number decode
authorRussell King <rmk@dyn-67.arm.linux.org.uk>
Wed, 15 Mar 2006 12:33:43 +0000 (12:33 +0000)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Tue, 21 Mar 2006 22:05:50 +0000 (22:05 +0000)
Allow the individual coprocessor handlers to decide when to enable
interrupts, rather than unconditionally enabling them.

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

index ec48d70c6d8b92d83db16b0f3ce9360944021c54..355914ffb1924371e9db73fbd8b64e9b737c740d 100644 (file)
@@ -484,7 +484,6 @@ call_fpe:
        movcss  r7, r5, lsr #(TIF_USING_IWMMXT + 1)
        bcs     iwmmxt_task_enable
 #endif
-       enable_irq
        add     pc, pc, r8, lsr #6
        mov     r0, r0
 
@@ -511,6 +510,7 @@ call_fpe:
        mov     pc, lr                          @ CP#15 (Control)
 
 do_fpe:
+       enable_irq
        ldr     r4, .LCfp
        add     r10, r10, #TI_FPSTATE           @ r10 = workspace
        ldr     pc, [r4]                        @ Call FP module USR entry point
index 6f17187ab32aa00b0fa65ede9a5c2a00a524c651..9ab1abfbe7ade15ba3288af85f999757b31441d3 100644 (file)
@@ -22,6 +22,7 @@
 
        .globl  do_vfp
 do_vfp:
+       enable_irq
        ldr     r4, .LCvfp
        add     r10, r10, #TI_VFPSTATE  @ r10 = workspace
        ldr     pc, [r4]                @ call VFP entry point