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>
This commit is contained in:
@@ -296,20 +296,6 @@ static void sgiioc4_set_dma_mode(ide_drive_t *drive, const u8 speed)
|
||||
{
|
||||
}
|
||||
|
||||
static int sgiioc4_ide_dma_check(ide_drive_t *drive)
|
||||
{
|
||||
if (ide_tune_dma(drive))
|
||||
return 0;
|
||||
|
||||
/*
|
||||
* ->set_pio_mode is not implemented currently
|
||||
* so this is just for the completness
|
||||
*/
|
||||
ide_set_max_pio(drive);
|
||||
|
||||
return -1;
|
||||
}
|
||||
|
||||
/* returns 1 if dma irq issued, 0 otherwise */
|
||||
static int
|
||||
sgiioc4_ide_dma_test_irq(ide_drive_t * drive)
|
||||
@@ -612,7 +598,6 @@ ide_init_sgiioc4(ide_hwif_t * hwif)
|
||||
hwif->dma_setup = &sgiioc4_ide_dma_setup;
|
||||
hwif->dma_start = &sgiioc4_ide_dma_start;
|
||||
hwif->ide_dma_end = &sgiioc4_ide_dma_end;
|
||||
hwif->ide_dma_check = &sgiioc4_ide_dma_check;
|
||||
hwif->ide_dma_on = &sgiioc4_ide_dma_on;
|
||||
hwif->dma_off_quietly = &sgiioc4_dma_off_quietly;
|
||||
hwif->ide_dma_test_irq = &sgiioc4_ide_dma_test_irq;
|
||||
|
Reference in New Issue
Block a user