diff options
Diffstat (limited to 'sys/arch/vax/vsa/vsbus.c')
-rw-r--r-- | sys/arch/vax/vsa/vsbus.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/sys/arch/vax/vsa/vsbus.c b/sys/arch/vax/vsa/vsbus.c index 5d9e57c6d18..1d4ab0daca8 100644 --- a/sys/arch/vax/vsa/vsbus.c +++ b/sys/arch/vax/vsa/vsbus.c @@ -1,4 +1,4 @@ -/* $OpenBSD: vsbus.c,v 1.15 2004/07/07 23:10:46 deraadt Exp $ */ +/* $OpenBSD: vsbus.c,v 1.16 2006/07/16 22:40:44 miod Exp $ */ /* $NetBSD: vsbus.c,v 1.29 2000/06/29 07:14:37 mrg Exp $ */ /* * Copyright (c) 1996, 1999 Ludd, University of Lule}, Sweden. @@ -106,6 +106,8 @@ struct cfdriver vsbus_cd = { NULL, "vsbus", DV_DULL }; +int oldvsbus; + int vsbus_print(aux, name) void *aux; @@ -261,6 +263,14 @@ vsbus_search(parent, cfd, aux) if (vec == 0) goto fail; + /* + * For proper splassert operation, we need to know if we are on + * a vsbus system where its devices interrupt at level 0x14 instead + * of 0x15. + */ + if (br == 0x14) + oldvsbus = 1; + va.va_br = br; va.va_cvec = vec; va.va_dmaaddr = sc->sc_dmaaddr; |