summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/dev/pci/mpii.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/sys/dev/pci/mpii.c b/sys/dev/pci/mpii.c
index 52777f6c326..051ca5e511c 100644
--- a/sys/dev/pci/mpii.c
+++ b/sys/dev/pci/mpii.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: mpii.c,v 1.124 2019/12/31 10:05:33 mpi Exp $ */
+/* $OpenBSD: mpii.c,v 1.125 2020/01/03 08:39:31 kn Exp $ */
/*
* Copyright (c) 2010, 2012 Mike Belopuhov
* Copyright (c) 2009 James Giannoules
@@ -930,6 +930,15 @@ mpii_scsi_probe(struct scsi_link *link)
return (EINVAL);
link->port_wwn = letoh64(vpg.wwid);
+#ifdef __sparc64__
+ /*
+ * WWIDs generated by LSI firmware are not IEEE NAA compliant
+ * so historical practise in OBP is to set the top nibble to 3
+ * to indicate that this is a RAID volume.
+ */
+ link->port_wwn &= 0x0fffffffffffffff;
+ link->port_wwn |= 0x3000000000000000;
+#endif
return (0);
}