aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2009-03-31 14:15:19 -0400
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2009-03-31 14:15:19 -0400
commit1cee52de28aa687760ad262ad0834d1bf6c6d2ac (patch)
treed647ae2ddae0513fbe6c4393a3d05a1bd8806852 /drivers/ide
parent35c9b4daf4c94b30e5cede597d98016ebf31b5ad (diff)
ide: inline ide_dma_timeout() into ide_dma_timeout_retry()
Since ide_dma_timeout() is only used by ide_dma_timeout_retry() inline it there. There should be no functional changes caused by this patch. Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide')
-rw-r--r--drivers/ide/ide-dma.c21
1 files changed, 6 insertions, 15 deletions
diff --git a/drivers/ide/ide-dma.c b/drivers/ide/ide-dma.c
index dc5d9bc4ced0..4e2005071113 100644
--- a/drivers/ide/ide-dma.c
+++ b/drivers/ide/ide-dma.c
@@ -460,20 +460,6 @@ void ide_dma_lost_irq(ide_drive_t *drive)
460} 460}
461EXPORT_SYMBOL_GPL(ide_dma_lost_irq); 461EXPORT_SYMBOL_GPL(ide_dma_lost_irq);
462 462
463static void ide_dma_timeout(ide_drive_t *drive)
464{
465 ide_hwif_t *hwif = drive->hwif;
466
467 printk(KERN_ERR "%s: timeout waiting for DMA\n", drive->name);
468
469 if (hwif->dma_ops->dma_test_irq(drive))
470 return;
471
472 ide_dump_status(drive, "DMA timeout", hwif->tp_ops->read_status(hwif));
473
474 hwif->dma_ops->dma_end(drive);
475}
476
477/* 463/*
478 * un-busy the port etc, and clear any pending DMA status. we want to 464 * un-busy the port etc, and clear any pending DMA status. we want to
479 * retry the current request in pio mode instead of risking tossing it 465 * retry the current request in pio mode instead of risking tossing it
@@ -499,7 +485,12 @@ ide_startstop_t ide_dma_timeout_retry(ide_drive_t *drive, int error)
499 printk(KERN_WARNING "%s: DMA timeout retry\n", drive->name); 485 printk(KERN_WARNING "%s: DMA timeout retry\n", drive->name);
500 if (dma_ops->dma_clear) 486 if (dma_ops->dma_clear)
501 dma_ops->dma_clear(drive); 487 dma_ops->dma_clear(drive);
502 ide_dma_timeout(drive); 488 printk(KERN_ERR "%s: timeout waiting for DMA\n", drive->name);
489 if (dma_ops->dma_test_irq(drive) == 0) {
490 ide_dump_status(drive, "DMA timeout",
491 hwif->tp_ops->read_status(hwif));
492 (void)dma_ops->dma_end(drive);
493 }
503 } 494 }
504 495
505 /* 496 /*