diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-10-13 15:39:46 -0400 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2008-10-13 15:39:46 -0400 |
commit | ffa15a6915b7f6f6f69b4a66e1100a9c68d11250 (patch) | |
tree | 7893654c44bc570d55c00a682c9725816bd5c285 /drivers/ide/mips | |
parent | de23ec9ca82357e6d337a2263befb1a65cf19c83 (diff) |
ide: make ide_dma_timeout() available also for CONFIG_BLK_DEV_IDEDMA_SFF=n
Make ide_dma_timeout() available also for CONFIG_BLK_DEV_IDEDMA_SFF=n
and convert {ics,au1xxx-}ide.c to use it.
While at it:
- dump ATA Status register content on error
- use EXPORT_SYMBOL_GPL() to match the rest of SFF DMA functions
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'drivers/ide/mips')
-rw-r--r-- | drivers/ide/mips/au1xxx-ide.c | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/drivers/ide/mips/au1xxx-ide.c b/drivers/ide/mips/au1xxx-ide.c index 92c90db4bb30..f9e88cfec827 100644 --- a/drivers/ide/mips/au1xxx-ide.c +++ b/drivers/ide/mips/au1xxx-ide.c | |||
@@ -366,18 +366,6 @@ static void auide_init_dbdma_dev(dbdev_tab_t *dev, u32 dev_id, u32 tsize, u32 de | |||
366 | } | 366 | } |
367 | 367 | ||
368 | #ifdef CONFIG_BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA | 368 | #ifdef CONFIG_BLK_DEV_IDE_AU1XXX_MDMA2_DBDMA |
369 | static void auide_dma_timeout(ide_drive_t *drive) | ||
370 | { | ||
371 | ide_hwif_t *hwif = HWIF(drive); | ||
372 | |||
373 | printk(KERN_ERR "%s: DMA timeout occurred: ", drive->name); | ||
374 | |||
375 | if (auide_dma_test_irq(drive)) | ||
376 | return; | ||
377 | |||
378 | auide_dma_end(drive); | ||
379 | } | ||
380 | |||
381 | static const struct ide_dma_ops au1xxx_dma_ops = { | 369 | static const struct ide_dma_ops au1xxx_dma_ops = { |
382 | .dma_host_set = auide_dma_host_set, | 370 | .dma_host_set = auide_dma_host_set, |
383 | .dma_setup = auide_dma_setup, | 371 | .dma_setup = auide_dma_setup, |
@@ -386,7 +374,7 @@ static const struct ide_dma_ops au1xxx_dma_ops = { | |||
386 | .dma_end = auide_dma_end, | 374 | .dma_end = auide_dma_end, |
387 | .dma_test_irq = auide_dma_test_irq, | 375 | .dma_test_irq = auide_dma_test_irq, |
388 | .dma_lost_irq = ide_dma_lost_irq, | 376 | .dma_lost_irq = ide_dma_lost_irq, |
389 | .dma_timeout = auide_dma_timeout, | 377 | .dma_timeout = ide_dma_timeout, |
390 | }; | 378 | }; |
391 | 379 | ||
392 | static int auide_ddma_init(ide_hwif_t *hwif, const struct ide_port_info *d) | 380 | static int auide_ddma_init(ide_hwif_t *hwif, const struct ide_port_info *d) |