diff options
Diffstat (limited to 'drivers/ide/ide-dma.c')
-rw-r--r-- | drivers/ide/ide-dma.c | 7 |
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 | ||
398 | void ide_dma_off_quietly(ide_drive_t *drive) | 398 | void 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 | ||
431 | void ide_dma_on(ide_drive_t *drive) | 431 | void 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 */ |