[SCSI] qla2xxx: Correct display of ISP serial-number.
authorAndrew Vasquez <andrew.vasquez@qlogic.com>
Fri, 19 Oct 2007 22:59:19 +0000 (15:59 -0700)
committerJames Bottomley <jejb@mulgrave.localdomain>
Tue, 23 Oct 2007 19:54:54 +0000 (15:54 -0400)
The original serial-number calculations based on WWPN no longer
apply to newer ISPs (ISP24xx and ISP25xx).  These newer board's
serial number reside in the VPD.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
drivers/scsi/qla2xxx/qla_attr.c

index 2f0bd5abb9acb1dc3e51af3cf79c8ca62d963806..fb388b8c07cf9edf614a63d9b35726ffbc1bb7a7 100644 (file)
@@ -538,6 +538,9 @@ qla2x00_serial_num_show(struct class_device *cdev, char *buf)
        scsi_qla_host_t *ha = shost_priv(class_to_shost(cdev));
        uint32_t sn;
 
+       if (IS_FWI2_CAPABLE(ha))
+               return snprintf(buf, PAGE_SIZE, "\n");
+
        sn = ((ha->serial0 & 0x1f) << 16) | (ha->serial2 << 8) | ha->serial1;
        return snprintf(buf, PAGE_SIZE, "%c%05d\n", 'A' + sn / 100000,
            sn % 100000);