diff options
author | Miod Vallat <miod@cvs.openbsd.org> | 2008-08-18 23:08:58 +0000 |
---|---|---|
committer | Miod Vallat <miod@cvs.openbsd.org> | 2008-08-18 23:08:58 +0000 |
commit | b33170830ef3885c9e56e01dca81249c0fb29bfd (patch) | |
tree | 4e751eef2bf76feddf4bf85d290da34cbea78717 /sys/arch/vax | |
parent | 884436909ca85671f0d985d9435e4f29aa8adeec (diff) |
Preparing for KA60 support, crank IPL_TTY to level 0x16 (since it is
hardwired this way on KA60...), and compensate in splassert_check() when
serial device interrupts will remain at 0x14 or 0x15.
Diffstat (limited to 'sys/arch/vax')
-rw-r--r-- | sys/arch/vax/include/intr.h | 4 | ||||
-rw-r--r-- | sys/arch/vax/vax/machdep.c | 14 |
2 files changed, 15 insertions, 3 deletions
diff --git a/sys/arch/vax/include/intr.h b/sys/arch/vax/include/intr.h index a3a3e76005b..5f225fdaf9e 100644 --- a/sys/arch/vax/include/intr.h +++ b/sys/arch/vax/include/intr.h @@ -1,4 +1,4 @@ -/* $OpenBSD: intr.h,v 1.8 2007/05/16 19:37:06 thib Exp $ */ +/* $OpenBSD: intr.h,v 1.9 2008/08/18 23:08:55 miod Exp $ */ /* $NetBSD: intr.h,v 1.1 1998/08/18 23:55:00 matt Exp $ */ /* @@ -42,7 +42,7 @@ #define IPL_SOFTNET 0x0c #define IPL_BIO 0x15 /* block I/O */ #define IPL_NET 0x15 /* network */ -#define IPL_TTY 0x15 /* terminal */ +#define IPL_TTY 0x16 /* terminal */ #define IPL_VM 0x17 /* memory allocation */ #define IPL_AUDIO 0x15 /* audio */ #define IPL_CLOCK 0x18 /* clock */ diff --git a/sys/arch/vax/vax/machdep.c b/sys/arch/vax/vax/machdep.c index 2d652f22d52..847792aeb58 100644 --- a/sys/arch/vax/vax/machdep.c +++ b/sys/arch/vax/vax/machdep.c @@ -1,4 +1,4 @@ -/* $OpenBSD: machdep.c,v 1.97 2008/08/14 11:41:30 martin Exp $ */ +/* $OpenBSD: machdep.c,v 1.98 2008/08/18 23:08:57 miod Exp $ */ /* $NetBSD: machdep.c,v 1.108 2000/09/13 15:00:23 thorpej Exp $ */ /* @@ -1051,6 +1051,18 @@ splassert_check(int wantipl, const char *func) */ if (oldvsbus != 0 && oldipl == 0x14) oldipl = 0x15; + + /* + * ... and then, IPL_TYY is now 0x16 because of KA60 interrupt + * assignments, so we should not mind if splassert(IPL_TTY) and + * IPL 0x15 on other machines. + */ + if (wantipl == IPL_TTY && oldipl == 0x15) { +#ifdef VAX60 + if (vax_boardtype != VAX_BTYP_60) +#endif + oldipl = 0x16; + } if (oldipl < wantipl) { splassert_fail(wantipl, oldipl, func); |