Fixed Linux generic firmware download on SLI4 devices with longer module names


Signed-off-by: James Smart <james.sm...@emulex.com>

 ---

 lpfc.h      |    2 ++
 lpfc_init.c |    5 +++--
 2 files changed, 5 insertions(+), 2 deletions(-)


diff -upNr a/drivers/scsi/lpfc/lpfc.h b/drivers/scsi/lpfc/lpfc.h
--- a/drivers/scsi/lpfc/lpfc.h  2012-09-26 20:19:47.000000000 -0400
+++ b/drivers/scsi/lpfc/lpfc.h  2012-09-26 21:11:37.205153927 -0400
@@ -27,6 +27,8 @@
 
 struct lpfc_sli2_slim;
 
+#define ELX_MODEL_NAME_SIZE    80
+
 #define LPFC_PCI_DEV_LP                0x1
 #define LPFC_PCI_DEV_OC                0x2
 
diff -upNr a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c
--- a/drivers/scsi/lpfc/lpfc_init.c     2012-09-26 21:11:36.039153900 -0400
+++ b/drivers/scsi/lpfc/lpfc_init.c     2012-09-26 21:11:37.227153927 -0400
@@ -9428,7 +9428,7 @@ lpfc_pci_probe_one_s4(struct pci_dev *pd
        int mcnt;
        int adjusted_fcp_io_channel;
        const struct firmware *fw;
-       uint8_t file_name[16];
+       uint8_t file_name[ELX_MODEL_NAME_SIZE];
 
        /* Allocate memory for HBA structure */
        phba = lpfc_hba_alloc(pdev);
@@ -9574,7 +9574,8 @@ lpfc_pci_probe_one_s4(struct pci_dev *pd
        /* check for firmware upgrade or downgrade (if_type 2 only) */
        if (bf_get(lpfc_sli_intf_if_type, &phba->sli4_hba.sli_intf) ==
            LPFC_SLI_INTF_IF_TYPE_2) {
-               snprintf(file_name, 16, "%s.grp", phba->ModelName);
+               snprintf(file_name, ELX_MODEL_NAME_SIZE, "%s.grp",
+                        phba->ModelName);
                error = request_firmware(&fw, file_name, &phba->pcidev->dev);
                if (!error) {
                        lpfc_write_firmware(phba, fw);



--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to