summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkettenis <kettenis@openbsd.org>2007-07-28 13:22:22 +0000
committerkettenis <kettenis@openbsd.org>2007-07-28 13:22:22 +0000
commit7c3b09226123ee2252664bc63db687a4f0116e8e (patch)
tree0518a7f0b3b236e20b4a543c795cc8fdeee0631b
parentadds functions to parse and to build EAPOL-Key frames used in (diff)
downloadwireguard-openbsd-7c3b09226123ee2252664bc63db687a4f0116e8e.tar.xz
wireguard-openbsd-7c3b09226123ee2252664bc63db687a4f0116e8e.zip
Don't try to map interrupts that are already fully specified. Makes the
onboard IDE controller on the Ultrabook 170/200 work.
-rw-r--r--sys/arch/sparc64/sparc64/ofw_machdep.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/sys/arch/sparc64/sparc64/ofw_machdep.c b/sys/arch/sparc64/sparc64/ofw_machdep.c
index 906a7927dde..54f6f62202a 100644
--- a/sys/arch/sparc64/sparc64/ofw_machdep.c
+++ b/sys/arch/sparc64/sparc64/ofw_machdep.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ofw_machdep.c,v 1.18 2007/04/10 14:26:17 kettenis Exp $ */
+/* $OpenBSD: ofw_machdep.c,v 1.19 2007/07/28 13:22:22 kettenis Exp $ */
/* $NetBSD: ofw_machdep.c,v 1.16 2001/07/20 00:07:14 eeh Exp $ */
/*
@@ -704,8 +704,11 @@ OF_mapintr(int node, int *interrupt, int validlen, int buflen)
int phc_node;
int rc = -1;
- /* Don't need to map OBP interrupt, it's already */
- if (*interrupt & 0x20)
+ /*
+ * Don't try to map interrupts for onboard devices, or if the
+ * interrupt is already fully specified.
+ */
+ if (*interrupt & 0x20 || *interrupt & 0x7c0)
return validlen;
/*