diff options
author | Michael Shalayeff <mickey@cvs.openbsd.org> | 2001-06-08 03:18:05 +0000 |
---|---|---|
committer | Michael Shalayeff <mickey@cvs.openbsd.org> | 2001-06-08 03:18:05 +0000 |
commit | f4db801f9ccb3704fa6d1fd4dcf52e8192a78a9c (patch) | |
tree | e54a8a9ea70ebfb8a79d1e4ef1768ffe93c80d0c /sys/arch/i386/pci | |
parent | 4d6cdc0ead3e781f9500571d3074f6e891e64180 (diff) |
it seems that via has 7, not 4 pci interrupt lines.
this fixes unmapped interrupts on some via-based boards,
reported by angelos@, tested w/ aaron@, millert@, jason@.
in any case must not break currently working boards.
Diffstat (limited to 'sys/arch/i386/pci')
-rw-r--r-- | sys/arch/i386/pci/via82c586.c | 5 | ||||
-rw-r--r-- | sys/arch/i386/pci/via82c586reg.h | 7 |
2 files changed, 9 insertions, 3 deletions
diff --git a/sys/arch/i386/pci/via82c586.c b/sys/arch/i386/pci/via82c586.c index 35d7c9a4c56..719ad6620d1 100644 --- a/sys/arch/i386/pci/via82c586.c +++ b/sys/arch/i386/pci/via82c586.c @@ -1,4 +1,4 @@ -/* $OpenBSD: via82c586.c,v 1.7 2001/04/23 02:40:51 deraadt Exp $ */ +/* $OpenBSD: via82c586.c,v 1.8 2001/06/08 03:18:04 mickey Exp $ */ /* $NetBSD: via82c586.c,v 1.2 2000/07/18 11:24:09 soda Exp $ */ /*- @@ -111,6 +111,9 @@ const int vp3_cfg_intr_shift[] = { VP3_CFG_INTR_SHIFT_PIRQB, VP3_CFG_INTR_SHIFT_PIRQC, VP3_CFG_INTR_SHIFT_PIRQD, + VP3_CFG_INTR_SHIFT_PIRQ0, + VP3_CFG_INTR_SHIFT_PIRQ1, + VP3_CFG_INTR_SHIFT_PIRQ2, }; #define VP3_PIRQ(reg, pirq) (((reg) >> vp3_cfg_intr_shift[(pirq)]) & \ diff --git a/sys/arch/i386/pci/via82c586reg.h b/sys/arch/i386/pci/via82c586reg.h index c8527403506..5a25b7d3515 100644 --- a/sys/arch/i386/pci/via82c586reg.h +++ b/sys/arch/i386/pci/via82c586reg.h @@ -1,4 +1,4 @@ -/* $OpenBSD: via82c586reg.h,v 1.4 2000/04/29 03:49:11 mickey Exp $ */ +/* $OpenBSD: via82c586reg.h,v 1.5 2001/06/08 03:18:04 mickey Exp $ */ /* $NetBSD: via82c586reg.h,v 1.2 2000/04/22 15:00:41 uch Exp $ */ /* @@ -56,8 +56,11 @@ #define VP3_CFG_INTR_SHIFT_PIRQB 0x10 #define VP3_CFG_INTR_SHIFT_PIRQC 0x1c #define VP3_CFG_INTR_SHIFT_PIRQD 0x0c +#define VP3_CFG_INTR_SHIFT_PIRQ0 0x10 +#define VP3_CFG_INTR_SHIFT_PIRQ1 0x08 +#define VP3_CFG_INTR_SHIFT_PIRQ2 0x00 #define VP3_PIRQ_NONE 0 -#define VP3_LEGAL_LINK(link) ((link) >= 0 && (link) <= 3) +#define VP3_LEGAL_LINK(link) ((link) >= 0 && (link) <= 6) #define VP3_LEGAL_IRQ(irq) ((irq) >= 0 && (irq) <= 15 && \ ((1 << (irq)) & VP3_PIRQ_MASK) != 0) |