summaryrefslogtreecommitdiff
path: root/drivers/scsi/csiostor/csio_attr.c
diff options
context:
space:
mode:
authorVarun Prakash <varun@chelsio.com>2018-03-11 15:32:13 +0300
committerMartin K. Petersen <martin.petersen@oracle.com>2018-03-15 07:41:51 +0300
commite1735d9a98ab5593484bbba1933e362a261e0de0 (patch)
tree88304d7f300edfbc0444ba5d9495c94413781a8c /drivers/scsi/csiostor/csio_attr.c
parent1929e82e37d9c43ce7063025877a779ac649d1e0 (diff)
downloadlinux-e1735d9a98ab5593484bbba1933e362a261e0de0.tar.xz
scsi: csiostor: add support for 32 bit port capabilities
32 bit port capabilities are required to support new speeds which can not be supported using 16 bit port capabilities. Signed-off-by: Varun Prakash <varun@chelsio.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/csiostor/csio_attr.c')
-rw-r--r--drivers/scsi/csiostor/csio_attr.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/drivers/scsi/csiostor/csio_attr.c b/drivers/scsi/csiostor/csio_attr.c
index 2d1c4ebd40f9..8a004036e3d7 100644
--- a/drivers/scsi/csiostor/csio_attr.c
+++ b/drivers/scsi/csiostor/csio_attr.c
@@ -274,12 +274,24 @@ csio_get_host_speed(struct Scsi_Host *shost)
spin_lock_irq(&hw->lock);
switch (hw->pport[ln->portid].link_speed) {
- case FW_PORT_CAP_SPEED_1G:
+ case FW_PORT_CAP32_SPEED_1G:
fc_host_speed(shost) = FC_PORTSPEED_1GBIT;
break;
- case FW_PORT_CAP_SPEED_10G:
+ case FW_PORT_CAP32_SPEED_10G:
fc_host_speed(shost) = FC_PORTSPEED_10GBIT;
break;
+ case FW_PORT_CAP32_SPEED_25G:
+ fc_host_speed(shost) = FC_PORTSPEED_25GBIT;
+ break;
+ case FW_PORT_CAP32_SPEED_40G:
+ fc_host_speed(shost) = FC_PORTSPEED_40GBIT;
+ break;
+ case FW_PORT_CAP32_SPEED_50G:
+ fc_host_speed(shost) = FC_PORTSPEED_50GBIT;
+ break;
+ case FW_PORT_CAP32_SPEED_100G:
+ fc_host_speed(shost) = FC_PORTSPEED_100GBIT;
+ break;
default:
fc_host_speed(shost) = FC_PORTSPEED_UNKNOWN;
break;