|
@@ -242,19 +242,16 @@ static int flexcop_pci_dma_init(struct flexcop_pci *fc_pci)
|
|
|
if ((ret = flexcop_dma_allocate(fc_pci->pdev,&fc_pci->dma[0],FC_DEFAULT_DMA1_BUFSIZE)) != 0)
|
|
|
return ret;
|
|
|
|
|
|
- if ((ret = flexcop_dma_allocate(fc_pci->pdev,&fc_pci->dma[1],FC_DEFAULT_DMA2_BUFSIZE)) != 0)
|
|
|
- goto dma1_free;
|
|
|
+ if ((ret = flexcop_dma_allocate(fc_pci->pdev,&fc_pci->dma[1],FC_DEFAULT_DMA2_BUFSIZE)) != 0) {
|
|
|
+ flexcop_dma_free(&fc_pci->dma[0]);
|
|
|
+ return ret;
|
|
|
+ }
|
|
|
|
|
|
flexcop_sram_set_dest(fc_pci->fc_dev,FC_SRAM_DEST_MEDIA | FC_SRAM_DEST_NET, FC_SRAM_DEST_TARGET_DMA1);
|
|
|
flexcop_sram_set_dest(fc_pci->fc_dev,FC_SRAM_DEST_CAO | FC_SRAM_DEST_CAI, FC_SRAM_DEST_TARGET_DMA2);
|
|
|
|
|
|
fc_pci->init_state |= FC_PCI_DMA_INIT;
|
|
|
|
|
|
- goto success;
|
|
|
-dma1_free:
|
|
|
- flexcop_dma_free(&fc_pci->dma[0]);
|
|
|
-
|
|
|
-success:
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
@@ -303,7 +300,7 @@ static int flexcop_pci_init(struct flexcop_pci *fc_pci)
|
|
|
spin_lock_init(&fc_pci->irq_lock);
|
|
|
|
|
|
fc_pci->init_state |= FC_PCI_INIT;
|
|
|
- goto success;
|
|
|
+ return ret;
|
|
|
|
|
|
err_pci_iounmap:
|
|
|
pci_iounmap(fc_pci->pdev, fc_pci->io_mem);
|
|
@@ -312,8 +309,6 @@ err_pci_release_regions:
|
|
|
pci_release_regions(fc_pci->pdev);
|
|
|
err_pci_disable_device:
|
|
|
pci_disable_device(fc_pci->pdev);
|
|
|
-
|
|
|
-success:
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
@@ -378,14 +373,14 @@ static int flexcop_pci_probe(struct pci_dev *pdev, const struct pci_device_id *e
|
|
|
|
|
|
INIT_WORK(&fc_pci->irq_check_work, flexcop_pci_irq_check_work, fc_pci);
|
|
|
|
|
|
- goto success;
|
|
|
+ return ret;
|
|
|
+
|
|
|
err_fc_exit:
|
|
|
flexcop_device_exit(fc);
|
|
|
err_pci_exit:
|
|
|
flexcop_pci_exit(fc_pci);
|
|
|
err_kfree:
|
|
|
flexcop_device_kfree(fc);
|
|
|
-success:
|
|
|
return ret;
|
|
|
}
|
|
|
|