summaryrefslogtreecommitdiff
path: root/sys/arch/mips64
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2007-10-13 12:46:19 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2007-10-13 12:46:19 +0000
commit77f0ca66bb7937375fe67517f138e94df14f0cb1 (patch)
treefd1fa5c90a4526c96bad0d05f5a40500320fdbdc /sys/arch/mips64
parentd91ba7861afd6d6adc7164fd3c2b174b506c797d (diff)
There is no need to fiddle with spl in cpu_idle_{enter,leave}, actually.
Diffstat (limited to 'sys/arch/mips64')
-rw-r--r--sys/arch/mips64/mips64/context.S37
1 files changed, 3 insertions, 34 deletions
diff --git a/sys/arch/mips64/mips64/context.S b/sys/arch/mips64/mips64/context.S
index 24deaf3b2ec..8b5876ea6d0 100644
--- a/sys/arch/mips64/mips64/context.S
+++ b/sys/arch/mips64/mips64/context.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: context.S,v 1.14 2007/10/10 15:53:52 art Exp $ */
+/* $OpenBSD: context.S,v 1.15 2007/10/13 12:46:18 miod Exp $ */
/*
* Copyright (c) 2002-2003 Opsycon AB (www.opsycon.se / www.opsycon.com)
@@ -69,31 +69,7 @@ LEAF(savectx, 0)
move v0, zero
END(savectx)
-NON_LEAF(cpu_idle_enter, FRAMESZ(CF_SZ), ra)
- PTR_SUBU sp, sp, FRAMESZ(CF_SZ)
- PTR_S ra, CF_RA_OFFS(sp)
- .mask 0x80000000, (CF_RA_OFFS - FRAMESZ(CF_SZ))
-
- sw zero, cpl # lower to spl0
- lw t0, ipending
- beqz t0, 1f
- nop
- jal setsoftintr0
- nop
-1:
- mfc0 a0, COP_0_STATUS_REG # ... and enable interrupts
- li a1, SR_INT_ENAB
- or a0, a0, a1
- mtc0 a0, COP_0_STATUS_REG
- ITLBNOPFIX
-
-#ifdef IMASK_EXTERNAL
- jal hw_setintrmask
- xor a0, a0
-#endif
- jal updateimask # Make sure SR imask is updated
- xor a0, a0
-
+LEAF(cpu_idle_enter, 0)
#if defined(TGT_CP7000) || defined(TGT_CP7000G)
PTR_L t2, misc_h # if non zero, do Ocelot LEDs.
beqz t2, 1f
@@ -102,9 +78,8 @@ NON_LEAF(cpu_idle_enter, FRAMESZ(CF_SZ), ra)
1:
#endif
- PTR_L ra, CF_RA_OFFS(sp)
j ra
- PTR_ADDU sp, sp, FRAMESZ(CF_SZ)
+ nop
END(cpu_idle_enter)
LEAF(cpu_idle_leave, 0)
@@ -116,12 +91,6 @@ LEAF(cpu_idle_leave, 0)
1:
#endif
- mfc0 a0, COP_0_STATUS_REG # disable interrupts
- li a1, ~SR_INT_ENAB
- and a0, a0, a1
- mtc0 a0, COP_0_STATUS_REG
- ITLBNOPFIX
-
j ra
nop
END(cpu_idle_leave)