]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
qla2xxx: Move initialization of some variables before iospace_config.
authorChad Dupuis <chad.dupuis@qlogic.com>
Sat, 17 Sep 2011 14:43:02 +0000 (10:43 -0400)
committerMaxim Uvarov <maxim.uvarov@oracle.com>
Fri, 16 Dec 2011 22:29:32 +0000 (14:29 -0800)
Some variables need to be initialized before we config PCI I/O config space
or else strange firmware initialization errors may occur.

Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com>
drivers/scsi/qla2xxx/qla_os.c

index 50ad79e41eb7cd02de2a8d4618180d21a2c0742c..0e2a13292e6741f436bba0f04d2484022e585d1d 100644 (file)
@@ -2027,6 +2027,11 @@ qla2x00_probe_one(struct pci_dev *pdev, const struct pci_device_id *id)
                pdev->needs_freset = 1;
        }
 
+       ha->prev_topology = 0;
+       ha->init_cb_size = sizeof(init_cb_t);
+       ha->link_data_rate = PORT_SPEED_UNKNOWN;
+       ha->optrom_size = OPTROM_SIZE_2300;
+
        /* Assign ISP specific operations. */
        max_id = MAX_TARGETS_2200;
        if (IS_QLA2100(ha)) {
@@ -2143,11 +2148,6 @@ qla2x00_probe_one(struct pci_dev *pdev, const struct pci_device_id *id)
        ql_log_pci(ql_log_info, pdev, 0x001d,
            "Found an ISP%04X irq %d iobase 0x%p.\n",
            pdev->device, pdev->irq, ha->iobase);
-       ha->prev_topology = 0;
-       ha->init_cb_size = sizeof(init_cb_t);
-       ha->link_data_rate = PORT_SPEED_UNKNOWN;
-       ha->optrom_size = OPTROM_SIZE_2300;
-
        mutex_init(&ha->vport_lock);
        init_completion(&ha->mbx_cmd_comp);
        complete(&ha->mbx_cmd_comp);