diff options
author | Miod Vallat <miod@cvs.openbsd.org> | 2000-07-14 14:24:55 +0000 |
---|---|---|
committer | Miod Vallat <miod@cvs.openbsd.org> | 2000-07-14 14:24:55 +0000 |
commit | 42ae8911463070716db54184906447265047a032 (patch) | |
tree | 5923193e553dfbda2f5696eaa119499f3602e23d /sys/arch/sun3/include/param.h | |
parent | f391d1788a5c7f41d31fc326d96892bef0de36c0 (diff) |
Move splXXXX() stuff from <machine/param.h> to <machine/psl.h>, and
define more inline functions for dealing with this.
From NetBSD
Diffstat (limited to 'sys/arch/sun3/include/param.h')
-rw-r--r-- | sys/arch/sun3/include/param.h | 59 |
1 files changed, 1 insertions, 58 deletions
diff --git a/sys/arch/sun3/include/param.h b/sys/arch/sun3/include/param.h index e549bf0be83..ee0ccee1dbc 100644 --- a/sys/arch/sun3/include/param.h +++ b/sys/arch/sun3/include/param.h @@ -1,4 +1,4 @@ -/* $OpenBSD: param.h,v 1.20 2000/07/06 15:25:04 ho Exp $ */ +/* $OpenBSD: param.h,v 1.21 2000/07/14 14:24:54 miod Exp $ */ /* $NetBSD: param.h,v 1.34 1996/03/04 05:04:40 cgd Exp $ */ /* @@ -105,63 +105,6 @@ #include <machine/psl.h> -#define _spl(s) \ -({ \ - register int _spl_r; \ -\ - __asm __volatile ("clrl %0; movew sr,%0; movew %1,sr" : \ - "=&d" (_spl_r) : "di" (s)); \ - _spl_r; \ -}) - -/* - * The rest of this is sun3 specific, because other ports may - * need to do special things in spl0() (i.e. simulate SIR). - * Suns have a REAL interrupt register, so spl0() and splx(s) - * have no need to check for any simulated interrupts, etc. - */ - -#define spl0() _spl(PSL_S|PSL_IPL0) -#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) -#define splx(x) _spl(x) - -/* IPL used by soft interrupts: netintr(), softclock() */ -#define spllowersoftclock() spl1() -#define splsoftclock() spl1() -#define splsoftnet() spl1() - -/* Highest block device (strategy) IPL. */ -#define splbio() spl2() - -/* Highest network interface IPL. */ -#define splnet() spl3() - -/* Highest tty device IPL. */ -#define spltty() spl4() - -/* Requirement: imp >= (highest network, tty, or disk IPL) */ -#define splimp() spl4() - -/* Intersil clock hardware interrupts (hard-wired at 5) */ -#define splclock() spl5() -#define splstatclock() splclock() - -/* Zilog Serial hardware interrupts (hard-wired at 6) */ -#define splzs() spl6() - -/* Block out all interrupts (except NMI of course). */ -#define splhigh() spl7() -#define splsched() spl7() - -/* Get current sr value (debug, etc.) */ -extern int getsr __P((void)); - #if defined(_KERNEL) && !defined(_LOCORE) extern void _delay __P((unsigned)); #define delay(us) _delay((us)<<8) |