scsi: qla2xxx: Indicate correct supported speeds for Mezz card
authorQuinn Tran <qutran@marvell.com>
Thu, 6 Aug 2020 11:10:06 +0000 (04:10 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Tue, 18 Aug 2020 02:40:11 +0000 (22:40 -0400)
Correct the supported speeds for 16G Mezz card.

Link: https://lore.kernel.org/r/20200806111014.28434-4-njavali@marvell.com
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: Quinn Tran <qutran@marvell.com>
Signed-off-by: Nilesh Javali <njavali@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/qla2xxx/qla_gs.c

index 7074073..3bfb567 100644 (file)
@@ -1505,11 +1505,11 @@ qla2x00_prep_ct_fdmi_req(struct ct_sns_pkt *p, uint16_t cmd,
 static uint
 qla25xx_fdmi_port_speed_capability(struct qla_hw_data *ha)
 {
+       uint speeds = 0;
+
        if (IS_CNA_CAPABLE(ha))
                return FDMI_PORT_SPEED_10GB;
        if (IS_QLA28XX(ha) || IS_QLA27XX(ha)) {
-               uint speeds = 0;
-
                if (ha->max_supported_speed == 2) {
                        if (ha->min_supported_speed <= 6)
                                speeds |= FDMI_PORT_SPEED_64GB;
@@ -1536,9 +1536,16 @@ qla25xx_fdmi_port_speed_capability(struct qla_hw_data *ha)
                }
                return speeds;
        }
-       if (IS_QLA2031(ha))
-               return FDMI_PORT_SPEED_16GB|FDMI_PORT_SPEED_8GB|
-                       FDMI_PORT_SPEED_4GB;
+       if (IS_QLA2031(ha)) {
+               if ((ha->pdev->subsystem_vendor == 0x103C) &&
+                   (ha->pdev->subsystem_device == 0x8002)) {
+                       speeds = FDMI_PORT_SPEED_16GB;
+               } else {
+                       speeds = FDMI_PORT_SPEED_16GB|FDMI_PORT_SPEED_8GB|
+                               FDMI_PORT_SPEED_4GB;
+               }
+               return speeds;
+       }
        if (IS_QLA25XX(ha))
                return FDMI_PORT_SPEED_8GB|FDMI_PORT_SPEED_4GB|
                        FDMI_PORT_SPEED_2GB|FDMI_PORT_SPEED_1GB;