aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/ide-dma.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ide/ide-dma.c')
-rw-r--r--drivers/ide/ide-dma.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/ide/ide-dma.c b/drivers/ide/ide-dma.c
index ef2f1504c0d5..2dacd802c72c 100644
--- a/drivers/ide/ide-dma.c
+++ b/drivers/ide/ide-dma.c
@@ -397,7 +397,7 @@ EXPORT_SYMBOL_GPL(ide_dma_host_set);
397 397
398void ide_dma_off_quietly(ide_drive_t *drive) 398void ide_dma_off_quietly(ide_drive_t *drive)
399{ 399{
400 drive->using_dma = 0; 400 drive->dev_flags &= ~IDE_DFLAG_USING_DMA;
401 ide_toggle_bounce(drive, 0); 401 ide_toggle_bounce(drive, 0);
402 402
403 drive->hwif->dma_ops->dma_host_set(drive, 0); 403 drive->hwif->dma_ops->dma_host_set(drive, 0);
@@ -430,7 +430,7 @@ EXPORT_SYMBOL(ide_dma_off);
430 430
431void ide_dma_on(ide_drive_t *drive) 431void ide_dma_on(ide_drive_t *drive)
432{ 432{
433 drive->using_dma = 1; 433 drive->dev_flags |= IDE_DFLAG_USING_DMA;
434 ide_toggle_bounce(drive, 1); 434 ide_toggle_bounce(drive, 1);
435 435
436 drive->hwif->dma_ops->dma_host_set(drive, 1); 436 drive->hwif->dma_ops->dma_host_set(drive, 1);
@@ -727,7 +727,8 @@ static int ide_tune_dma(ide_drive_t *drive)
727 ide_hwif_t *hwif = drive->hwif; 727 ide_hwif_t *hwif = drive->hwif;
728 u8 speed; 728 u8 speed;
729 729
730 if (drive->nodma || ata_id_has_dma(drive->id) == 0) 730 if (ata_id_has_dma(drive->id) == 0 ||
731 (drive->dev_flags & IDE_DFLAG_NODMA))
731 return 0; 732 return 0;
732 733
733 /* consult the list of known "bad" drives */ 734 /* consult the list of known "bad" drives */