aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/pci/sl82c105.c
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2007-10-16 16:29:55 -0400
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2007-10-16 16:29:55 -0400
commit0ae2e178652753ae1797d407755a3505f7c1d2a7 (patch)
treefa725edcfb4b9752ebf2aa49a3e42e158537d4ed /drivers/ide/pci/sl82c105.c
parentb8b739d3361c16773a30fe5c0360336bbc19f435 (diff)
ide: remove ->ide_dma_check (take 2)
* Add IDE_HFLAG_TRUST_BIOS_FOR_DMA host flag for host drivers that depend on BIOS for programming device/controller for DMA. Set it in cy82c693, generic, ns87415, opti621 and trm290 host drivers. * Add IDE_HFLAG_VDMA host flag for host drivers using VDMA. Set it in cs5520 host driver. * Teach ide_tune_dma() about IDE_HFLAG_TRUST_BIOS_FOR_DMA flag. * Add generic ide_dma_check() helper and remove all open coded ->ide_dma_check implementations. Fix all places checking for presence of ->ide_dma_check hook to check for ->ide_dma_on instead. * Remove no longer needed code from config_drive_for_dma(). * Make ide_tune_dma() static. v2: * Fix config_drive_for_dma() return values. * Fix ide-dma.c build for CONFIG_BLK_DEV_IDEDMA_PCI=n by adding dummy config_drive_for_dma() inline. * Fix IDE_HFLAG_TRUST_BIOS_FOR_DMA handling in ide_dma_check(). * Fix init_hwif_it8213() comment. There should be no functionality changes caused by this patch. Cc: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/pci/sl82c105.c')
-rw-r--r--drivers/ide/pci/sl82c105.c16
1 files changed, 0 insertions, 16 deletions
diff --git a/drivers/ide/pci/sl82c105.c b/drivers/ide/pci/sl82c105.c
index 245eac05ab1b..c9090faf49bd 100644
--- a/drivers/ide/pci/sl82c105.c
+++ b/drivers/ide/pci/sl82c105.c
@@ -145,21 +145,6 @@ static void sl82c105_set_dma_mode(ide_drive_t *drive, const u8 speed)
145} 145}
146 146
147/* 147/*
148 * Check to see if the drive and chipset are capable of DMA mode.
149 */
150static int sl82c105_ide_dma_check(ide_drive_t *drive)
151{
152 DBG(("sl82c105_ide_dma_check(drive:%s)\n", drive->name));
153
154 if (ide_tune_dma(drive))
155 return 0;
156
157 ide_set_max_pio(drive);
158
159 return -1;
160}
161
162/*
163 * The SL82C105 holds off all IDE interrupts while in DMA mode until 148 * The SL82C105 holds off all IDE interrupts while in DMA mode until
164 * all DMA activity is completed. Sometimes this causes problems (eg, 149 * all DMA activity is completed. Sometimes this causes problems (eg,
165 * when the drive wants to report an error condition). 150 * when the drive wants to report an error condition).
@@ -406,7 +391,6 @@ static void __devinit init_hwif_sl82c105(ide_hwif_t *hwif)
406 hwif->atapi_dma = 1; 391 hwif->atapi_dma = 1;
407 hwif->mwdma_mask = 0x07; 392 hwif->mwdma_mask = 0x07;
408 393
409 hwif->ide_dma_check = &sl82c105_ide_dma_check;
410 hwif->ide_dma_on = &sl82c105_ide_dma_on; 394 hwif->ide_dma_on = &sl82c105_ide_dma_on;
411 hwif->dma_off_quietly = &sl82c105_dma_off_quietly; 395 hwif->dma_off_quietly = &sl82c105_dma_off_quietly;
412 hwif->dma_lost_irq = &sl82c105_dma_lost_irq; 396 hwif->dma_lost_irq = &sl82c105_dma_lost_irq;