diff options
author | Mark Kettenis <kettenis@cvs.openbsd.org> | 2007-07-28 13:22:23 +0000 |
---|---|---|
committer | Mark Kettenis <kettenis@cvs.openbsd.org> | 2007-07-28 13:22:23 +0000 |
commit | 519eb5c208b9165a33ba3a66205b2762534f436c (patch) | |
tree | 76ea4e82e29ce05fcc3416892d53ab514e5436e0 /sys/arch/sparc64 | |
parent | 0f3f2a40e58e75c6d36f3f669ce5dbbc4b228a0b (diff) |
Don't try to map interrupts that are already fully specified. Makes the
onboard IDE controller on the Ultrabook 170/200 work.
Diffstat (limited to 'sys/arch/sparc64')
-rw-r--r-- | sys/arch/sparc64/sparc64/ofw_machdep.c | 9 |
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; /* |