summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/arch/sparc/dev/p9000.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/sys/arch/sparc/dev/p9000.c b/sys/arch/sparc/dev/p9000.c
index f957fb442e8..2cdfa22ea64 100644
--- a/sys/arch/sparc/dev/p9000.c
+++ b/sys/arch/sparc/dev/p9000.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: p9000.c,v 1.20 2007/02/25 18:14:48 miod Exp $ */
+/* $OpenBSD: p9000.c,v 1.21 2008/12/26 00:43:03 miod Exp $ */
/*
* Copyright (c) 2003, Miodrag Vallat.
@@ -176,6 +176,16 @@ p9000match(struct device *parent, void *vcf, void *aux)
if (strcmp("p9000", ra->ra_name))
return (0);
+ /*
+ * If this is not the console device, chances are the
+ * frame buffer is not completely initialized, and access
+ * to some of its control registers could hang (this is
+ * the case on p9100). Until this can be verified, do
+ * not attach if console is on serial.
+ */
+ if (ra->ra_node != fbnode)
+ return (0);
+
return (1);
}