summaryrefslogtreecommitdiff
path: root/sys/arch/hp300
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2005-05-01 09:55:50 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2005-05-01 09:55:50 +0000
commit5f77a732972cb1329a2fd64dd2fe6540c1dfbee6 (patch)
tree1923315eff03edf7109969e6cd13e2e68f0c871e /sys/arch/hp300
parent6e9804297a3ff083bc61d8f4b088f1d2766a559d (diff)
Bring raise-only semantics to splsoft* on m68k and m88k, as done elsewhere.
Diffstat (limited to 'sys/arch/hp300')
-rw-r--r--sys/arch/hp300/hp300/trap.c4
-rw-r--r--sys/arch/hp300/include/intr.h26
2 files changed, 11 insertions, 19 deletions
diff --git a/sys/arch/hp300/hp300/trap.c b/sys/arch/hp300/hp300/trap.c
index a492b906080..b73a1ef71b8 100644
--- a/sys/arch/hp300/hp300/trap.c
+++ b/sys/arch/hp300/hp300/trap.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: trap.c,v 1.46 2005/01/15 21:13:08 miod Exp $ */
+/* $OpenBSD: trap.c,v 1.47 2005/05/01 09:55:47 miod Exp $ */
/* $NetBSD: trap.c,v 1.57 1998/02/16 20:58:31 thorpej Exp $ */
/*
@@ -549,7 +549,7 @@ dopanic:
* check. Note that we ensure that we are at least at SIR
* IPL while processing the SIR.
*/
- spl1();
+ splsoft();
/* FALLTHROUGH */
case T_SSIR: /* software interrupt */
diff --git a/sys/arch/hp300/include/intr.h b/sys/arch/hp300/include/intr.h
index 4b97d69e245..5fa0590580e 100644
--- a/sys/arch/hp300/include/intr.h
+++ b/sys/arch/hp300/include/intr.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: intr.h,v 1.15 2005/04/19 15:29:47 mickey Exp $ */
+/* $OpenBSD: intr.h,v 1.16 2005/05/01 09:55:49 miod Exp $ */
/* $NetBSD: intr.h,v 1.2 1997/07/24 05:43:08 scottr Exp $ */
/*-
@@ -88,15 +88,6 @@ struct isr {
_spl_r; \
})
-/* spl0 requires checking for software interrupts */
-#define spl1() _spl(PSL_S|PSL_IPL1)
-#define spl2() _spl(PSL_S|PSL_IPL2)
-#define spl3() _spl(PSL_S|PSL_IPL3)
-#define spl4() _spl(PSL_S|PSL_IPL4)
-#define spl5() _spl(PSL_S|PSL_IPL5)
-#define spl6() _spl(PSL_S|PSL_IPL6)
-#define spl7() _spl(PSL_S|PSL_IPL7)
-
/*
* These four globals contain the appropriate PSL_S|PSL_IPL? values
* to raise interupt priority to the requested level.
@@ -126,19 +117,20 @@ extern unsigned short hp300_impipl;
#define IPL_HIGH 7
/* These spl calls are used by machine-independent code. */
-#define splsoftclock() spl1()
-#define splsoftnet() spl1()
+#define splsoft() _splraise(PSL_S | PSL_IPL1)
+#define splsoftclock() splsoft()
+#define splsoftnet() splsoft()
#define splbio() _splraise(hp300_bioipl)
#define splnet() _splraise(hp300_netipl)
#define spltty() _splraise(hp300_ttyipl)
#define splimp() _splraise(hp300_impipl)
-#define splclock() spl6()
-#define splstatclock() spl6()
-#define splvm() splimp()
-#define splhigh() spl7()
+#define splclock() _splraise(PSL_S | PSL_IPL6)
+#define splstatclock() _splraise(PSL_S | PSL_IPL6)
+#define splvm() _splraise(hp300_impipl)
+#define splhigh() _spl(PSL_S | PSL_IPL7)
/* watch out for side effects */
-#define splx(s) ((s) & PSL_IPL ? _spl((s)) : spl0())
+#define splx(s) ((s) & PSL_IPL ? _spl((s)) : spl0())
/*
* Simulated software interrupt register.