diff options
-rw-r--r-- | sys/dev/pci/mpii.c | 11 |
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); } |