xref: /csrg-svn/sys/i386/isa/icu.h (revision 43593)
141054Swilliam /*-
241054Swilliam  * Copyright (c) 1990 The Regents of the University of California.
341054Swilliam  * All rights reserved.
441054Swilliam  *
541054Swilliam  * This code is derived from software contributed to Berkeley by
641054Swilliam  * William Jolitz.
741054Swilliam  *
841054Swilliam  * %sccs.include.386.c%
941054Swilliam  *
10*43593Sdonahn  *	@(#)icu.h	5.2 (Berkeley) 06/23/90
1141054Swilliam  */
1241054Swilliam 
1341054Swilliam /*
1441054Swilliam  * AT/386 Interrupt Control constants
1541054Swilliam  * W. Jolitz 8/89
1641054Swilliam  */
1741054Swilliam 
18*43593Sdonahn #ifndef	__ICU__
19*43593Sdonahn #define	__ICU__
20*43593Sdonahn 
2141054Swilliam #ifndef	LOCORE
2241054Swilliam extern	unsigned short	imen;	/* interrupt mask enable */
2341054Swilliam extern	unsigned short	cpl;	/* current priority level */
2441054Swilliam 
25*43593Sdonahn extern	unsigned short ttymask; /* things that get masked with spltty() */
26*43593Sdonahn extern	unsigned short biomask; /* things that get masked with splbio() */
27*43593Sdonahn 
2841054Swilliam #define	INTREN(s)	imen &= ~(s)
2941054Swilliam #define	INTRDIS(s)	imen |= (s)
3041054Swilliam #endif
3141054Swilliam 
3241054Swilliam /* Interrupt enable bits */
3341054Swilliam #define	IRQ0	0x0001		/* highest priority - timer */
3441054Swilliam #define	IRQ1	0x0002
3541054Swilliam #define	IRQ8	0x0100
3641054Swilliam #define	IRQ9	0x0200
3741054Swilliam #define	IRQ2	IRQ9
3841054Swilliam #define	IRQ10	0x0400
3941054Swilliam #define	IRQ11	0x0800
4041054Swilliam #define	IRQ12	0x1000
4141054Swilliam #define	IRQ13	0x2000
4241054Swilliam #define	IRQ14	0x4000
4341054Swilliam #define	IRQ15	0x8000
4441054Swilliam #define	IRQ3	0x0008
4541054Swilliam #define	IRQ4	0x0010
4641054Swilliam #define	IRQ5	0x0020
4741054Swilliam #define	IRQ6	0x0040
4841054Swilliam #define	IRQ7	0x0080		/* lowest - parallel printer */
4941054Swilliam 
50*43593Sdonahn #endif	__ICU__
51