diff options
author | Miod Vallat <miod@cvs.openbsd.org> | 2008-08-09 16:41:22 +0000 |
---|---|---|
committer | Miod Vallat <miod@cvs.openbsd.org> | 2008-08-09 16:41:22 +0000 |
commit | 11754e7098bbd7d4f9264fad171e37e92967d7b1 (patch) | |
tree | a97f7612388464ad7ac51e01457a2adbafa5ed9f /sys/arch/alpha/pci/sio_pic.c | |
parent | da26f8064b57a0506f9f6dca9b1191e6be262262 (diff) |
Do not forget to set the ``specific EOI'' bit when sending a... specific EOI;
from NetBSD.
Diffstat (limited to 'sys/arch/alpha/pci/sio_pic.c')
-rw-r--r-- | sys/arch/alpha/pci/sio_pic.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sys/arch/alpha/pci/sio_pic.c b/sys/arch/alpha/pci/sio_pic.c index 6358b458bb4..52ca5489e65 100644 --- a/sys/arch/alpha/pci/sio_pic.c +++ b/sys/arch/alpha/pci/sio_pic.c @@ -1,4 +1,4 @@ -/* $OpenBSD: sio_pic.c,v 1.28 2008/07/29 18:39:45 miod Exp $ */ +/* $OpenBSD: sio_pic.c,v 1.29 2008/08/09 16:41:21 miod Exp $ */ /* $NetBSD: sio_pic.c,v 1.28 2000/06/06 03:10:13 thorpej Exp $ */ /*- @@ -625,8 +625,10 @@ static void specific_eoi(irq) int irq; { - if (irq > 7) + if (irq > 7) { bus_space_write_1(sio_iot, - sio_ioh_icu2, 0, 0x20 | (irq & 0x07)); /* XXX */ - bus_space_write_1(sio_iot, sio_ioh_icu1, 0, 0x20 | (irq > 7 ? 2 : irq)); + sio_ioh_icu2, 0, 0x60 | (irq & 0x07)); /* XXX */ + irq = 2; + } + bus_space_write_1(sio_iot, sio_ioh_icu1, 0, 0x60 | irq); } |