aboutsummaryrefslogtreecommitdiffstats
path: root/arch/m68k/kernel/entry_no.S
diff options
context:
space:
mode:
authorGreg Ungerer <gerg@uclinux.org>2011-10-14 01:41:56 -0400
committerGreg Ungerer <gerg@uclinux.org>2011-12-29 19:20:24 -0500
commitbbc6f1ba509cf9cda42ce63bbd40afe577ab028e (patch)
tree281010e3d781b995e429efaacd7c99d0947c2bdf /arch/m68k/kernel/entry_no.S
parent88be3515934004d271398129ba7145635e95127e (diff)
m68k: set register a2 to current if MMU enabled on ColdFire
Virtual memory m68k systems build with register a2 dedicated to being the current proc pointer (non-MMU don't do this). Add code to the ColdFire interrupt and exception processing to set this on entry, and at context switch time. We use the same GET_CURRENT() macro that MMU enabled code uses - modifying it so that the assembler is ColdFire clean. Signed-off-by: Greg Ungerer <gerg@uclinux.org> Acked-by: Matt Waddel <mwaddel@yahoo.com> Acked-by: Kurt Mahan <kmahan@xmission.com> Acked-by: Geert Uytterhoeven <geert@linux-m68k.org>
Diffstat (limited to 'arch/m68k/kernel/entry_no.S')
-rw-r--r--arch/m68k/kernel/entry_no.S3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/m68k/kernel/entry_no.S b/arch/m68k/kernel/entry_no.S
index ac86a9ffc1d7..d80cba45589f 100644
--- a/arch/m68k/kernel/entry_no.S
+++ b/arch/m68k/kernel/entry_no.S
@@ -44,6 +44,7 @@
44 44
45ENTRY(buserr) 45ENTRY(buserr)
46 SAVE_ALL_INT 46 SAVE_ALL_INT
47 GET_CURRENT(%d0)
47 movel %sp,%sp@- /* stack frame pointer argument */ 48 movel %sp,%sp@- /* stack frame pointer argument */
48 jsr buserr_c 49 jsr buserr_c
49 addql #4,%sp 50 addql #4,%sp
@@ -51,6 +52,7 @@ ENTRY(buserr)
51 52
52ENTRY(trap) 53ENTRY(trap)
53 SAVE_ALL_INT 54 SAVE_ALL_INT
55 GET_CURRENT(%d0)
54 movel %sp,%sp@- /* stack frame pointer argument */ 56 movel %sp,%sp@- /* stack frame pointer argument */
55 jsr trap_c 57 jsr trap_c
56 addql #4,%sp 58 addql #4,%sp
@@ -61,6 +63,7 @@ ENTRY(trap)
61.globl dbginterrupt 63.globl dbginterrupt
62ENTRY(dbginterrupt) 64ENTRY(dbginterrupt)
63 SAVE_ALL_INT 65 SAVE_ALL_INT
66 GET_CURRENT(%d0)
64 movel %sp,%sp@- /* stack frame pointer argument */ 67 movel %sp,%sp@- /* stack frame pointer argument */
65 jsr dbginterrupt_c 68 jsr dbginterrupt_c
66 addql #4,%sp 69 addql #4,%sp