pdc202xx_old: fix ‘pdc20246_dma_ops’ [Linux 2.6.30]

This Linux kernel change "pdc202xx_old: fix ‘pdc20246_dma_ops’" is included in the Linux 2.6.30 release. This change is authored by Sergei Shtylyov <sshtylyov [at] ru.mvista.com> on Sun Jun 7 13:52:50 2009 +0200. The commit for this change in Linux stable tree is 521a415 (patch).

pdc202xx_old: fix 'pdc20246_dma_ops'

Commit ac95beedf8bc97b24f9540d4da9952f07221c023 (ide: add struct ide_port_ops
(take 2)) erroneously converted the driver's dma_timeout() and dma_lost_irq()
methods to call the driver's resetproc() method regardless of whether it was
defined for this specific controller while it hadn't been defined and hence
called for PDC20246. So the dma_clear() method, the successor of dma_timeout(),
shouldn't exist and the dma_lost_irq() method should be standard for PDC20246.

Signed-off-by: Sergei Shtylyov <[email protected]>
Signed-off-by: Bartlomiej Zolnierkiewicz <[email protected]>

There are 3 lines of Linux source code added/deleted in this change. Code changes to Linux kernel are as follows.

 drivers/ide/pdc202xx_old.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/ide/pdc202xx_old.c b/drivers/ide/pdc202xx_old.c
index 248a54b..8df2630 100644
--- a/drivers/ide/pdc202xx_old.c
+++ b/drivers/ide/pdc202xx_old.c
@@ -328,9 +328,8 @@ static void __devinit pdc202ata4_fixup_irq(struct pci_dev *dev,
    .dma_start      = ide_dma_start,
    .dma_end        = ide_dma_end,
    .dma_test_irq       = pdc202xx_dma_test_irq,
-   .dma_lost_irq       = pdc202xx_dma_lost_irq,
+   .dma_lost_irq       = ide_dma_lost_irq,
    .dma_timer_expiry   = ide_dma_sff_timer_expiry,
-   .dma_clear      = pdc202xx_reset,
    .dma_sff_read_status    = ide_dma_sff_read_status,
 };

Leave a Reply

Your email address will not be published. Required fields are marked *