summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/arch/sparc/dev/zs.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/sys/arch/sparc/dev/zs.c b/sys/arch/sparc/dev/zs.c
index bdeb232bed7..8deba289a7e 100644
--- a/sys/arch/sparc/dev/zs.c
+++ b/sys/arch/sparc/dev/zs.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: zs.c,v 1.37 2002/09/03 23:20:40 miod Exp $ */
+/* $OpenBSD: zs.c,v 1.38 2003/01/20 15:57:28 miod Exp $ */
/* $NetBSD: zs.c,v 1.50 1997/10/18 00:00:40 gwr Exp $ */
/*-
@@ -226,8 +226,13 @@ zs_match(parent, vcf, aux)
if (strcmp(cf->cf_driver->cd_name, ra->ra_name))
return (0);
if ((ca->ca_bustype == BUS_MAIN && !CPU_ISSUN4) ||
- (ca->ca_bustype == BUS_OBIO && CPU_ISSUN4M))
- return (getpropint(ra->ra_node, "slave", -2) == cf->cf_unit);
+ (ca->ca_bustype == BUS_OBIO && CPU_ISSUN4M)) {
+ if (getpropint(ra->ra_node, "slave", -2) == cf->cf_unit &&
+ findzs(cf->cf_unit))
+ return (1);
+ return (0);
+ }
+
ra->ra_len = NBPG;
return (probeget(ra->ra_vaddr, 1) != -1);
}