svwks: small cleanup

* remove redundant svwks_ide_dma_end() [ __ide_dma_end() is used by default ]
* remove init_dma_svwks() so the default ide_setup_dma() function is used
  [ init_setup_csb6() takes care of not initializing disabled channels ]
Signed-off-by: default avatarBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
parent 15b85485
...@@ -339,13 +339,6 @@ static int svwks_config_drive_xfer_rate (ide_drive_t *drive) ...@@ -339,13 +339,6 @@ static int svwks_config_drive_xfer_rate (ide_drive_t *drive)
return 0; return 0;
} }
/* This can go soon */
static int svwks_ide_dma_end (ide_drive_t *drive)
{
return __ide_dma_end(drive);
}
static unsigned int __devinit init_chipset_svwks (struct pci_dev *dev, const char *name) static unsigned int __devinit init_chipset_svwks (struct pci_dev *dev, const char *name)
{ {
unsigned int reg; unsigned int reg;
...@@ -537,10 +530,10 @@ static void __devinit init_hwif_svwks (ide_hwif_t *hwif) ...@@ -537,10 +530,10 @@ static void __devinit init_hwif_svwks (ide_hwif_t *hwif)
} }
hwif->ide_dma_check = &svwks_config_drive_xfer_rate; hwif->ide_dma_check = &svwks_config_drive_xfer_rate;
if (hwif->pci_dev->device == PCI_DEVICE_ID_SERVERWORKS_OSB4IDE) if (hwif->pci_dev->device != PCI_DEVICE_ID_SERVERWORKS_OSB4IDE) {
hwif->ide_dma_end = &svwks_ide_dma_end; if (!hwif->udma_four)
else if (!(hwif->udma_four)) hwif->udma_four = ata66_svwks(hwif);
hwif->udma_four = ata66_svwks(hwif); }
if (!noautodma) if (!noautodma)
hwif->autodma = 1; hwif->autodma = 1;
...@@ -551,21 +544,6 @@ static void __devinit init_hwif_svwks (ide_hwif_t *hwif) ...@@ -551,21 +544,6 @@ static void __devinit init_hwif_svwks (ide_hwif_t *hwif)
hwif->drives[1].autotune = (!(dma_stat & 0x40)); hwif->drives[1].autotune = (!(dma_stat & 0x40));
} }
/*
* We allow the BM-DMA driver to only work on enabled interfaces.
*/
static void __devinit init_dma_svwks (ide_hwif_t *hwif, unsigned long dmabase)
{
struct pci_dev *dev = hwif->pci_dev;
if (((dev->device == PCI_DEVICE_ID_SERVERWORKS_CSB6IDE) ||
(dev->device == PCI_DEVICE_ID_SERVERWORKS_CSB6IDE2)) &&
(!(PCI_FUNC(dev->devfn) & 1)) && (hwif->channel))
return;
ide_setup_dma(hwif, dmabase, 8);
}
static int __devinit init_setup_svwks (struct pci_dev *dev, ide_pci_device_t *d) static int __devinit init_setup_svwks (struct pci_dev *dev, ide_pci_device_t *d)
{ {
return ide_setup_pci_device(dev, d); return ide_setup_pci_device(dev, d);
...@@ -600,7 +578,6 @@ static ide_pci_device_t serverworks_chipsets[] __devinitdata = { ...@@ -600,7 +578,6 @@ static ide_pci_device_t serverworks_chipsets[] __devinitdata = {
.init_setup = init_setup_svwks, .init_setup = init_setup_svwks,
.init_chipset = init_chipset_svwks, .init_chipset = init_chipset_svwks,
.init_hwif = init_hwif_svwks, .init_hwif = init_hwif_svwks,
.init_dma = init_dma_svwks,
.channels = 2, .channels = 2,
.autodma = AUTODMA, .autodma = AUTODMA,
.bootable = ON_BOARD, .bootable = ON_BOARD,
...@@ -609,7 +586,6 @@ static ide_pci_device_t serverworks_chipsets[] __devinitdata = { ...@@ -609,7 +586,6 @@ static ide_pci_device_t serverworks_chipsets[] __devinitdata = {
.init_setup = init_setup_csb6, .init_setup = init_setup_csb6,
.init_chipset = init_chipset_svwks, .init_chipset = init_chipset_svwks,
.init_hwif = init_hwif_svwks, .init_hwif = init_hwif_svwks,
.init_dma = init_dma_svwks,
.channels = 2, .channels = 2,
.autodma = AUTODMA, .autodma = AUTODMA,
.bootable = ON_BOARD, .bootable = ON_BOARD,
...@@ -618,7 +594,6 @@ static ide_pci_device_t serverworks_chipsets[] __devinitdata = { ...@@ -618,7 +594,6 @@ static ide_pci_device_t serverworks_chipsets[] __devinitdata = {
.init_setup = init_setup_csb6, .init_setup = init_setup_csb6,
.init_chipset = init_chipset_svwks, .init_chipset = init_chipset_svwks,
.init_hwif = init_hwif_svwks, .init_hwif = init_hwif_svwks,
.init_dma = init_dma_svwks,
.channels = 1, /* 2 */ .channels = 1, /* 2 */
.autodma = AUTODMA, .autodma = AUTODMA,
.bootable = ON_BOARD, .bootable = ON_BOARD,
...@@ -627,7 +602,6 @@ static ide_pci_device_t serverworks_chipsets[] __devinitdata = { ...@@ -627,7 +602,6 @@ static ide_pci_device_t serverworks_chipsets[] __devinitdata = {
.init_setup = init_setup_svwks, .init_setup = init_setup_svwks,
.init_chipset = init_chipset_svwks, .init_chipset = init_chipset_svwks,
.init_hwif = init_hwif_svwks, .init_hwif = init_hwif_svwks,
.init_dma = init_dma_svwks,
.channels = 1, /* 2 */ .channels = 1, /* 2 */
.autodma = AUTODMA, .autodma = AUTODMA,
.bootable = ON_BOARD, .bootable = ON_BOARD,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment