From 1963665c7e8d22702e3078cd69b22c0a2eb55a26 Mon Sep 17 00:00:00 2001 From: mycroft Date: Fri, 21 Mar 1997 04:34:18 +0000 Subject: [PATCH] Add IPL_AUDIO. --- sys/arch/i386/include/intr.h | 26 ++++++++++++++------------ sys/arch/i386/isa/isa_machdep.c | 6 ++++-- 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/sys/arch/i386/include/intr.h b/sys/arch/i386/include/intr.h index ece9d636003c..5731a94e13d6 100644 --- a/sys/arch/i386/include/intr.h +++ b/sys/arch/i386/include/intr.h @@ -1,4 +1,4 @@ -/* $NetBSD: intr.h,v 1.6 1997/02/28 16:24:03 mycroft Exp $ */ +/* $NetBSD: intr.h,v 1.7 1997/03/21 04:34:18 mycroft Exp $ */ /* * Copyright (c) 1996, 1997 Charles M. Hannum. All rights reserved. @@ -33,18 +33,19 @@ #define _I386_INTR_H_ /* Interrupt priority `levels'. */ -#define IPL_NONE 8 /* nothing */ -#define IPL_SOFTCLOCK 7 /* timeouts */ -#define IPL_SOFTNET 6 /* protocol stacks */ -#define IPL_BIO 5 /* block I/O */ -#define IPL_NET 4 /* network */ -#define IPL_SOFTSERIAL 3 /* serial */ -#define IPL_TTY 2 /* terminal */ -#define IPL_IMP 2 /* memory allocation */ +#define IPL_NONE 9 /* nothing */ +#define IPL_SOFTCLOCK 8 /* timeouts */ +#define IPL_SOFTNET 7 /* protocol stacks */ +#define IPL_BIO 6 /* block I/O */ +#define IPL_NET 5 /* network */ +#define IPL_SOFTSERIAL 4 /* serial */ +#define IPL_TTY 3 /* terminal */ +#define IPL_IMP 3 /* memory allocation */ +#define IPL_AUDIO 2 /* audio */ #define IPL_CLOCK 1 /* clock */ #define IPL_HIGH 1 /* everything */ #define IPL_SERIAL 0 /* serial */ -#define NIPL 9 +#define NIPL 10 /* Interrupt sharing types. */ #define IST_NONE 0 /* none */ @@ -118,10 +119,10 @@ spllower(ncpl) #define splbio() splraise(imask[IPL_BIO]) #define splnet() splraise(imask[IPL_NET]) #define spltty() splraise(imask[IPL_TTY]) +#define splaudio() splraise(imask[IPL_AUDIO]) #define splclock() splraise(imask[IPL_CLOCK]) -#define splimp() splraise(imask[IPL_IMP]) -#define splserial() splraise(imask[IPL_SERIAL]) #define splstatclock() splclock() +#define splserial() splraise(imask[IPL_SERIAL]) /* * Software interrupt masks @@ -136,6 +137,7 @@ spllower(ncpl) /* * Miscellaneous */ +#define splimp() splraise(imask[IPL_IMP]) #define splhigh() splraise(imask[IPL_HIGH]) #define spl0() spllower(0) diff --git a/sys/arch/i386/isa/isa_machdep.c b/sys/arch/i386/isa/isa_machdep.c index 1ee86a672287..05dfe264339f 100644 --- a/sys/arch/i386/isa/isa_machdep.c +++ b/sys/arch/i386/isa/isa_machdep.c @@ -1,4 +1,4 @@ -/* $NetBSD: isa_machdep.c,v 1.18 1997/02/28 16:24:07 mycroft Exp $ */ +/* $NetBSD: isa_machdep.c,v 1.19 1997/03/21 04:34:21 mycroft Exp $ */ /*- * Copyright (c) 1993, 1994, 1996, 1997 Charles M. Hannum. All rights reserved. @@ -199,11 +199,13 @@ intr_calculatemasks() */ imask[IPL_IMP] |= imask[IPL_TTY]; + imask[IPL_AUDIO] |= imask[IPL_IMP]; + /* * Since run queues may be manipulated by both the statclock and tty, * network, and disk drivers, clock > imp. */ - imask[IPL_CLOCK] |= imask[IPL_IMP]; + imask[IPL_CLOCK] |= imask[IPL_AUDIO]; /* * IPL_HIGH must block everything that can manipulate a run queue.