[SCSI] qla2xxx: Add a new interface to update versions.
authorSawan Chandak <sawan.chandak@qlogic.com>
Tue, 27 Aug 2013 05:37:51 +0000 (01:37 -0400)
committerJames Bottomley <JBottomley@Parallels.com>
Tue, 3 Sep 2013 14:28:07 +0000 (07:28 -0700)
On any Adapter when we flash through FC/FCoE without card reset option it still
shows the Running FW version in Flashed FW version. This new interface will be
used by API to instruct the driver to update its cache versions.

Signed-off-by: Sawan Chandak <sawan.chandak@qlogic.com>
Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
drivers/scsi/qla2xxx/qla_attr.c
drivers/scsi/qla2xxx/qla_dbg.c

index 85aad4a0b2816aac6ffe0f1b07d73df4a719c7fc..b1d32c4da44c60b35f5bd00659bdec4fee9f5c3a 100644 (file)
@@ -590,7 +590,7 @@ qla2x00_sysfs_write_reset(struct file *filp, struct kobject *kobj,
        struct scsi_qla_host *base_vha = pci_get_drvdata(ha->pdev);
        int type;
        uint32_t idc_control;
-
+       uint8_t *tmp_data = NULL;
        if (off != 0)
                return -EINVAL;
 
@@ -687,7 +687,19 @@ qla2x00_sysfs_write_reset(struct file *filp, struct kobject *kobj,
                __qla83xx_set_idc_control(vha, idc_control);
                qla83xx_idc_unlock(vha, 0);
                break;
-
+       case 0x20261:
+               ql_dbg(ql_dbg_user, vha, 0x70e0,
+                   "Updating cache versions without reset ");
+
+               tmp_data = vmalloc(256);
+               if (!tmp_data) {
+                       ql_log(ql_log_warn, vha, 0x70e1,
+                           "Unable to allocate memory for VPD information update.\n");
+                       return -ENOMEM;
+               }
+               ha->isp_ops->get_flash_version(vha, tmp_data);
+               vfree(tmp_data);
+               break;
        }
        return count;
 }
index f192c52a82a9c377de984f5788baaa691c1b6f59..f693b30c7ff0045506e5a2a2038706ecd782516e 100644 (file)
@@ -31,7 +31,7 @@
  * |                              |                    | 0x5040,0x5075  |
  * |                              |                    | 0x503d,0x5044  |
  * | Timer Routines               |       0x6012       |                |
- * | User Space Interactions      |       0x70dd       | 0x7018,0x702e, |
+ * | User Space Interactions      |       0x70e1       | 0x7018,0x702e, |
  * |                              |                    | 0x7020,0x7024, |
  * |                              |                    | 0x7039,0x7045, |
  * |                              |                    | 0x7073-0x7075, |