summaryrefslogtreecommitdiff
path: root/sys/arch/sparc64
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2012-06-30 22:00:50 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2012-06-30 22:00:50 +0000
commit270e6554af8b198920aa6292aa3d7fcadba55e9c (patch)
tree6e6319e51965c8ccc69fafbc7be67a2b1b82a0a5 /sys/arch/sparc64
parent3220111555bf497ba7869bcaaa7c7e44f126fc5d (diff)
Further research shows that fp@x,y device path components with x > 0 are
used by Solaris for virtual ports (NPIV), and booting from thos is not supported by OBP. Simplify the code accordingly.
Diffstat (limited to 'sys/arch/sparc64')
-rw-r--r--sys/arch/sparc64/sparc64/autoconf.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/sys/arch/sparc64/sparc64/autoconf.c b/sys/arch/sparc64/sparc64/autoconf.c
index fdd48bbcc72..733a15e4ed9 100644
--- a/sys/arch/sparc64/sparc64/autoconf.c
+++ b/sys/arch/sparc64/sparc64/autoconf.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: autoconf.c,v 1.115 2012/06/27 22:40:38 matthew Exp $ */
+/* $OpenBSD: autoconf.c,v 1.116 2012/06/30 22:00:49 kettenis Exp $ */
/* $NetBSD: autoconf.c,v 1.51 2001/07/24 19:32:11 eeh Exp $ */
/*
@@ -1361,11 +1361,11 @@ device_register(struct device *dev, void *aux)
}
if (strcmp(devname, "scsibus") == 0) {
- struct scsibus_attach_args *saa = aux;
- struct scsi_link *sl = saa->saa_sc_link;
-
- if (strcmp(bp->name, "fp") == 0 &&
- bp->val[0] == ((sl->flags & SDEV_2NDBUS) ? 1 : 0)) {
+ /*
+ * Booting from anything but the first (physical) port
+ * isn't supported by OBP.
+ */
+ if (strcmp(bp->name, "fp") == 0 && bp->val[0] == 0) {
DPRINTF(ACDB_BOOTDEV, ("\t-- matched component %s to %s\n",
bp->name, dev->dv_xname));
bootpath_store(1, bp + 1);