qla2xxx: Enable diagnostic port using NVRAM parameters.
authorHimanshu Madhani <himanshu.madhani@qlogic.com>
Thu, 25 Sep 2014 09:16:54 +0000 (05:16 -0400)
committerChristoph Hellwig <hch@lst.de>
Thu, 25 Sep 2014 12:25:04 +0000 (14:25 +0200)
Signed-off-by: Himanshu Madhani <himanshu.madhani@qlogic.com>
Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/scsi/qla2xxx/qla_def.h
drivers/scsi/qla2xxx/qla_init.c

index c161d60759e90266145b452345957fa89047bd47..c29f4653db1811eb9979363e8fd21d716b208f7f 100644 (file)
@@ -3136,6 +3136,7 @@ struct qla_hw_data {
 #define IS_ATIO_MSIX_CAPABLE(ha) (IS_QLA83XX(ha))
 #define IS_TGT_MODE_CAPABLE(ha)        (ha->tgt.atio_q_length)
 #define IS_SHADOW_REG_CAPABLE(ha)  (IS_QLA27XX(ha))
+#define IS_DPORT_CAPABLE(ha)  (IS_QLA83XX(ha) || IS_QLA27XX(ha))
 
        /* HBA serial number */
        uint8_t         serial0;
index ab22ccf4c7d3ad16db819facb88a7890f2f32663..1b917711cda48828660bab17b4e53223d0946436 100644 (file)
@@ -2196,6 +2196,10 @@ qla2x00_init_rings(scsi_qla_host_t *vha)
                mid_init_cb->options = __constant_cpu_to_le16(BIT_1);
                mid_init_cb->init_cb.execution_throttle =
                    cpu_to_le16(ha->fw_xcb_count);
+               /* D-Port Status */
+               if (IS_DPORT_CAPABLE(ha))
+                       mid_init_cb->init_cb.firmware_options_1 |=
+                           cpu_to_le16(BIT_7);
        }
 
        rval = qla2x00_init_firmware(vha, ha->init_cb_size);