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.c17
1 files changed, 10 insertions, 7 deletions
diff --git a/drivers/ide/ide-dma.c b/drivers/ide/ide-dma.c
index ce322602982e..ca55bfa4ac74 100644
--- a/drivers/ide/ide-dma.c
+++ b/drivers/ide/ide-dma.c
@@ -857,16 +857,19 @@ void ide_dma_lost_irq (ide_drive_t *drive)
857 857
858EXPORT_SYMBOL(ide_dma_lost_irq); 858EXPORT_SYMBOL(ide_dma_lost_irq);
859 859
860int __ide_dma_timeout (ide_drive_t *drive) 860void ide_dma_timeout (ide_drive_t *drive)
861{ 861{
862 ide_hwif_t *hwif = HWIF(drive);
863
862 printk(KERN_ERR "%s: timeout waiting for DMA\n", drive->name); 864 printk(KERN_ERR "%s: timeout waiting for DMA\n", drive->name);
863 if (HWIF(drive)->ide_dma_test_irq(drive))
864 return 0;
865 865
866 return HWIF(drive)->ide_dma_end(drive); 866 if (hwif->ide_dma_test_irq(drive))
867 return;
868
869 hwif->ide_dma_end(drive);
867} 870}
868 871
869EXPORT_SYMBOL(__ide_dma_timeout); 872EXPORT_SYMBOL(ide_dma_timeout);
870 873
871/* 874/*
872 * Needed for allowing full modular support of ide-driver 875 * Needed for allowing full modular support of ide-driver
@@ -1017,8 +1020,8 @@ void ide_setup_dma (ide_hwif_t *hwif, unsigned long dma_base, unsigned int num_p
1017 hwif->ide_dma_end = &__ide_dma_end; 1020 hwif->ide_dma_end = &__ide_dma_end;
1018 if (!hwif->ide_dma_test_irq) 1021 if (!hwif->ide_dma_test_irq)
1019 hwif->ide_dma_test_irq = &__ide_dma_test_irq; 1022 hwif->ide_dma_test_irq = &__ide_dma_test_irq;
1020 if (!hwif->ide_dma_timeout) 1023 if (!hwif->dma_timeout)
1021 hwif->ide_dma_timeout = &__ide_dma_timeout; 1024 hwif->dma_timeout = &ide_dma_timeout;
1022 if (!hwif->dma_lost_irq) 1025 if (!hwif->dma_lost_irq)
1023 hwif->dma_lost_irq = &ide_dma_lost_irq; 1026 hwif->dma_lost_irq = &ide_dma_lost_irq;
1024 1027