summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2008-05-24 14:54:04 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2008-05-24 14:54:04 +0000
commitb1c9b2b25761dcf9d86b8128fe78f01755ab4205 (patch)
tree62beb8c1692677b219165ece1e62e538e35cc757
parent9e9c78f434748a7bf36574deccb16c8a479ef166 (diff)
iLet's see if this also works for Oberon (the PCIe bridge found on the SPARC Enterprise M4000/M5000/M8000/M9000).
-rw-r--r--sys/arch/sparc64/dev/pyro.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/sys/arch/sparc64/dev/pyro.c b/sys/arch/sparc64/dev/pyro.c
index 5f1ff439196..146164c5abe 100644
--- a/sys/arch/sparc64/dev/pyro.c
+++ b/sys/arch/sparc64/dev/pyro.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pyro.c,v 1.11 2008/01/19 11:13:43 kettenis Exp $ */
+/* $OpenBSD: pyro.c,v 1.12 2008/05/24 14:54:03 kettenis Exp $ */
/*
* Copyright (c) 2002 Jason L. Wright (jason@thought.net)
@@ -97,7 +97,8 @@ pyro_match(struct device *parent, void *match, void *aux)
return (0);
str = getpropstring(ma->ma_node, "compatible");
- if (strcmp(str, "pciex108e,80f0") == 0)
+ if (strcmp(str, "pciex108e,80f0") == 0 ||
+ strcmp(str, "pciex108e,80f8") == 0)
return (1);
return (0);
@@ -108,6 +109,7 @@ pyro_attach(struct device *parent, struct device *self, void *aux)
{
struct pyro_softc *sc = (struct pyro_softc *)self;
struct mainbus_attach_args *ma = aux;
+ char *str;
int busa;
sc->sc_node = ma->ma_node;
@@ -134,6 +136,10 @@ pyro_attach(struct device *parent, struct device *self, void *aux)
return;
}
+ str = getpropstring(ma->ma_node, "compatible");
+ if (strcmp(str, "pciex108e,80f8") == 0)
+ sc->sc_oberon = 1;
+
pyro_init(sc, busa);
}