summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormiod <miod@openbsd.org>2008-08-09 16:41:21 +0000
committermiod <miod@openbsd.org>2008-08-09 16:41:21 +0000
commit9ca3193af720459a2cab7d6f26fdd789eebe9d50 (patch)
tree814fe12fd93fc7b5c1973f28aa7d16249366d485
parentRegen (diff)
downloadwireguard-openbsd-9ca3193af720459a2cab7d6f26fdd789eebe9d50.tar.xz
wireguard-openbsd-9ca3193af720459a2cab7d6f26fdd789eebe9d50.zip
Do not forget to set the ``specific EOI'' bit when sending a... specific EOI;
from NetBSD.
-rw-r--r--sys/arch/alpha/pci/sio_pic.c10
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);
}