void megasas_fusion_ocr_wq(struct work_struct *work);
 static int megasas_get_ld_vf_affiliation(struct megasas_instance *instance,
                                         int initial);
+static int
+megasas_set_dma_mask(struct pci_dev *pdev);
+static int
+megasas_alloc_ctrl_mem(struct megasas_instance *instance);
+static inline void
+megasas_free_ctrl_mem(struct megasas_instance *instance);
+static inline int
+megasas_alloc_ctrl_dma_buffers(struct megasas_instance *instance);
+static inline void
+megasas_free_ctrl_dma_buffers(struct megasas_instance *instance);
+static inline void
+megasas_init_ctrl_params(struct megasas_instance *instance);
 
 void
 megasas_issue_dcmd(struct megasas_instance *instance, struct megasas_cmd *cmd)
                        goto fail_ready_state;
        }
 
+       megasas_init_ctrl_params(instance);
+
+       if (megasas_set_dma_mask(instance->pdev))
+               goto fail_ready_state;
+
+       if (megasas_alloc_ctrl_mem(instance))
+               goto fail_alloc_dma_buf;
+
+       if (megasas_alloc_ctrl_dma_buffers(instance))
+               goto fail_alloc_dma_buf;
+
+       fusion = instance->ctrl_context;
+
        if (instance->adapter_type == VENTURA_SERIES) {
                scratch_pad_3 =
                        readl(&instance->reg_set->outbound_scratch_pad_3);
        if (instance->msix_vectors)
                pci_free_irq_vectors(instance->pdev);
        instance->msix_vectors = 0;
+fail_alloc_dma_buf:
+       megasas_free_ctrl_dma_buffers(instance);
+       megasas_free_ctrl_mem(instance);
 fail_ready_state:
        iounmap(instance->reg_set);
 
 
        pci_set_master(pdev);
 
-       if (megasas_set_dma_mask(pdev))
-               goto fail_set_dma_mask;
-
        host = scsi_host_alloc(&megasas_template,
                               sizeof(struct megasas_instance));
 
 
        megasas_set_adapter_type(instance);
 
-       megasas_init_ctrl_params(instance);
-
-       if (megasas_alloc_ctrl_mem(instance))
-               goto fail_alloc_dma_buf;
-
-       if (megasas_alloc_ctrl_dma_buffers(instance))
-               goto fail_alloc_dma_buf;
-
        /*
         * Initialize MFI Firmware
         */
        if (instance->msix_vectors)
                pci_free_irq_vectors(instance->pdev);
 fail_init_mfi:
-fail_alloc_dma_buf:
-       megasas_free_ctrl_dma_buffers(instance);
-       megasas_free_ctrl_mem(instance);
        scsi_host_put(host);
 
 fail_alloc_instance:
-fail_set_dma_mask:
        pci_disable_device(pdev);
 
        return -ENODEV;