summaryrefslogtreecommitdiff
path: root/sys/arch/mac68k
diff options
context:
space:
mode:
authorbriggs <briggs@cvs.openbsd.org>1996-02-20 05:38:46 +0000
committerbriggs <briggs@cvs.openbsd.org>1996-02-20 05:38:46 +0000
commite975a0a5924fe5f4ed8329164adf371e255e6fea (patch)
treec821803359c43bfdbaa8b58c11546500e83f431d /sys/arch/mac68k
parent1079ede622eaed2a151bd314237bfd00180aabe9 (diff)
A few more things from NetBSD:
- Move spl stuff from param.h to psl.h. Prototype delay() in param.h. - param.h: Fix #includes. - param.h: Move splimp to 2 and spltty to 1.
Diffstat (limited to 'sys/arch/mac68k')
-rw-r--r--sys/arch/mac68k/include/param.h52
-rw-r--r--sys/arch/mac68k/include/psl.h53
2 files changed, 58 insertions, 47 deletions
diff --git a/sys/arch/mac68k/include/param.h b/sys/arch/mac68k/include/param.h
index 17db7eb4781..021eb051798 100644
--- a/sys/arch/mac68k/include/param.h
+++ b/sys/arch/mac68k/include/param.h
@@ -1,4 +1,4 @@
-/* $NetBSD: param.h,v 1.21 1995/08/13 01:52:16 briggs Exp $ */
+/* $NetBSD: param.h,v 1.24 1996/02/17 14:50:40 briggs Exp $ */
/*
* Copyright (c) 1988 University of Utah.
@@ -80,7 +80,7 @@
#define _MACHINE_PARAM_H_ 1
#ifndef PSL_IPL
-#include "machine/psl.h"
+#include <machine/psl.h>
#endif /* PSL_IPL */
/*
@@ -179,51 +179,11 @@
#define mac68k_btop(x) ((unsigned)(x) >> PGSHIFT)
#define mac68k_ptob(x) ((unsigned)(x) << PGSHIFT)
-/*
- * spl functions; all but spl0 are done in-line
- */
-
-#define _spl(s) \
-({ \
- register int _spl_r; \
-\
- __asm __volatile ("clrl %0; movew sr,%0; movew %1,sr" : \
- "&=d" (_spl_r) : "di" (s)); \
- _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 should be used for:
- 1) ensuring mutual exclusion (why use processor level?)
- 2) allowing faster devices to take priority
-
- Note that on the mac, most things are masked at spl1, almost
- everything at spl2, and everything but the panic switch and
- power at spl4.
- */
-#define splsoftclock() spl1() /* disallow softclock */
-#define splsoftnet() spl1() /* disallow network */
-#define splclock() spl1() /* disallow clock interrupt */
-#define spltty() spl1() /* disallow tty (softserial&adb) interrupts */
-#define splbio() spl2() /* disallow block I/O */
-#define splnet() spl2() /* disallow network */
-#define splimp() spl2() /* disallow imput */
-#define splhigh() spl7() /* disallow everything */
-#define splsched() spl7() /* disallow scheduling */
-
-#define splstatclock() spl2() /* This should be splclock... */
-
-/* watch out for side effects */
-#define splx(s) ((s) & PSL_IPL ? _spl(s) : spl0())
+#include <machine/psl.h>
+#if defined(_KERNEL) && !defined(_LOCORE)
+void delay __P((unsigned));
#define DELAY(ms) delay(ms)
+#endif /* _KERNEL && !_LOCORE */
#endif /* _MACHINE_PARAM_H_ */
diff --git a/sys/arch/mac68k/include/psl.h b/sys/arch/mac68k/include/psl.h
index 327f09514ed..a2bb48afb9e 100644
--- a/sys/arch/mac68k/include/psl.h
+++ b/sys/arch/mac68k/include/psl.h
@@ -1,3 +1,54 @@
-/* $NetBSD: psl.h,v 1.4 1994/10/26 08:46:42 cgd Exp $ */
+/* $NetBSD: psl.h,v 1.5 1996/02/17 14:50:42 briggs Exp $ */
+#ifndef PSL_C
#include <m68k/psl.h>
+
+#if defined(_KERNEL) && !defined(_LOCORE)
+/*
+ * spl functions; all but spl0 are done in-line
+ */
+
+#define _spl(s) \
+({ \
+ register int _spl_r; \
+\
+ __asm __volatile ("clrl %0; movew sr,%0; movew %1,sr" : \
+ "&=d" (_spl_r) : "di" (s)); \
+ _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 should be used for:
+ 1) ensuring mutual exclusion (why use processor level?)
+ 2) allowing faster devices to take priority
+
+ Note that on the mac, most things are masked at spl1, almost
+ everything at spl2, and everything but the panic switch and
+ power at spl4.
+ */
+#define splsoftclock() spl1() /* disallow softclock */
+#define splsoftnet() spl1() /* disallow network */
+#define splclock() spl1() /* disallow clock interrupt */
+#define spltty() spl1() /* disallow tty (softserial&adb) interrupts */
+#define splbio() spl2() /* disallow block I/O */
+#define splnet() spl2() /* disallow network */
+#define splimp() spl2() /* disallow imput */
+#define splhigh() spl7() /* disallow everything */
+#define splsched() spl7() /* disallow scheduling */
+
+#define splstatclock() spl2() /* This should be splclock... */
+
+/* watch out for side effects */
+#define splx(s) ((s) & PSL_IPL ? _spl(s) : spl0())
+
+#endif /* _KERNEL && !_LOCORE */
+
+#endif /* ndef PSL_C */