scsi: qla2xxx: Use FC-NVMe FC4 type for FDMI registration
authorDuane Grigsby <duane.grigsby@cavium.com>
Wed, 21 Jun 2017 20:48:45 +0000 (13:48 -0700)
committerMartin K. Petersen <martin.petersen@oracle.com>
Wed, 28 Jun 2017 01:24:00 +0000 (21:24 -0400)
[mkp: fixed typo]

Signed-off-by: Duane Grigsby <duane.grigsby@cavium.com>
Signed-off-by: Darren Trapp <darren.trapp@cavium.com>
Signed-off-by: Anil Gurumurthy <anil.gurumurhty@cavium.com>
Signed-off-by: Giridhar Malavali <giridhar.malavali@cavium.com>
Signed-off-by: Himanshu Madhani <himanshu.madhani@cavium.com>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Reviewed-by: James Smart <james.smart@broadcom.com>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/qla2xxx/qla_gs.c

index c91478529b51e4983ef7c381277f443181f094e1..b323a7c71eda241eb9aa9e853f5c14ebd58293b5 100644 (file)
@@ -2166,6 +2166,13 @@ qla2x00_fdmiv2_rpa(scsi_qla_host_t *vha)
            eiter->a.fc4_types[2],
            eiter->a.fc4_types[1]);
 
+       if (vha->flags.nvme_enabled) {
+               eiter->a.fc4_types[6] = 1;      /* NVMe type 28h */
+               ql_dbg(ql_dbg_disc, vha, 0x211f,
+                   "NVME FC4 Type = %02x 0x0 0x0 0x0 0x0 0x0.\n",
+                   eiter->a.fc4_types[6]);
+       }
+
        /* Supported speed. */
        eiter = entries + size;
        eiter->type = cpu_to_be16(FDMI_PORT_SUPPORT_SPEED);
@@ -2363,6 +2370,15 @@ qla2x00_fdmiv2_rpa(scsi_qla_host_t *vha)
            "Port Active FC4 Type = %02x %02x.\n",
            eiter->a.port_fc4_type[2], eiter->a.port_fc4_type[1]);
 
+       if (vha->flags.nvme_enabled) {
+               eiter->a.port_fc4_type[4] = 0;
+               eiter->a.port_fc4_type[5] = 0;
+               eiter->a.port_fc4_type[6] = 1;  /* NVMe type 28h */
+               ql_dbg(ql_dbg_disc, vha, 0x2120,
+                   "NVME Port Active FC4 Type = %02x 0x0 0x0 0x0 0x0 0x0.\n",
+                   eiter->a.port_fc4_type[6]);
+       }
+
        /* Port State */
        eiter = entries + size;
        eiter->type = cpu_to_be16(FDMI_PORT_STATE);