From: Chad Dupuis Date: Fri, 18 Nov 2011 17:03:21 +0000 (-0800) Subject: [SCSI] qla2xxx: Move initialization of some variables before iospace_config. X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=cba1e47f4d641459e05eacaaa50a26d5e3d28818;p=GitHub%2FLineageOS%2FG12%2Fandroid_kernel_amlogic_linux-4.9.git [SCSI] qla2xxx: Move initialization of some variables before iospace_config. 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 Signed-off-by: James Bottomley --- diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c index d713bc387790..4ed1e4a96b95 100644 --- a/drivers/scsi/qla2xxx/qla_os.c +++ b/drivers/scsi/qla2xxx/qla_os.c @@ -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);