summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <b.zolnierkiewicz@elka.pw.edu.pl>2003-04-27 01:37:14 -0700
committerLinus Torvalds <torvalds@home.transmeta.com>2003-04-27 01:37:14 -0700
commit63cbdcc8071446003c117a26bcf07952e28ea52c (patch)
tree2d0b6860453403eae506fc8014b5ff6283bd63ca
parentafbf875bfc4d50bcf476dc7cdeb5d7066345abf1 (diff)
[PATCH] fix DMA for taskfile IO
Fix handling of read/write DMA in do_rw_taskfile(), it was broken because default return value is ide_stopped.
-rw-r--r--drivers/ide/ide-taskfile.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/ide/ide-taskfile.c b/drivers/ide/ide-taskfile.c
index 46e6d56d0eaa..65969cd2fdfa 100644
--- a/drivers/ide/ide-taskfile.c
+++ b/drivers/ide/ide-taskfile.c
@@ -189,15 +189,15 @@ ide_startstop_t do_rw_taskfile (ide_drive_t *drive, ide_task_t *task)
case WIN_WRITEDMA_ONCE:
case WIN_WRITEDMA:
case WIN_WRITEDMA_EXT:
- if (hwif->ide_dma_write(drive))
- return ide_stopped;
+ if (!hwif->ide_dma_write(drive))
+ return ide_started;
break;
case WIN_READDMA_ONCE:
case WIN_READDMA:
case WIN_READDMA_EXT:
case WIN_IDENTIFY_DMA:
- if (hwif->ide_dma_read(drive))
- return ide_stopped;
+ if (!hwif->ide_dma_read(drive))
+ return ide_started;
break;
case WIN_READDMA_QUEUED:
case WIN_READDMA_QUEUED_EXT: