aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/ide/sc1200.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/ide/sc1200.c')
-rw-r--r--drivers/ide/sc1200.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/drivers/ide/sc1200.c b/drivers/ide/sc1200.c
index 1c3a82914999..d467478d68da 100644
--- a/drivers/ide/sc1200.c
+++ b/drivers/ide/sc1200.c
@@ -115,8 +115,7 @@ static u8 sc1200_udma_filter(ide_drive_t *drive)
115 if ((mateid[ATA_ID_FIELD_VALID] & 4) && 115 if ((mateid[ATA_ID_FIELD_VALID] & 4) &&
116 (mateid[ATA_ID_UDMA_MODES] & 7)) 116 (mateid[ATA_ID_UDMA_MODES] & 7))
117 goto out; 117 goto out;
118 if ((mateid[ATA_ID_FIELD_VALID] & 2) && 118 if (mateid[ATA_ID_MWDMA_MODES] & 7)
119 (mateid[ATA_ID_MWDMA_MODES] & 7))
120 mask = 0; 119 mask = 0;
121 } 120 }
122out: 121out:
@@ -183,9 +182,6 @@ static int sc1200_dma_end(ide_drive_t *drive)
183 outb(dma_stat|0x1b, dma_base+2); /* clear the INTR & ERROR bits */ 182 outb(dma_stat|0x1b, dma_base+2); /* clear the INTR & ERROR bits */
184 outb(inb(dma_base)&~1, dma_base); /* !! DO THIS HERE !! stop DMA */ 183 outb(inb(dma_base)&~1, dma_base); /* !! DO THIS HERE !! stop DMA */
185 184
186 drive->waiting_for_dma = 0;
187 ide_destroy_dmatable(drive); /* purge DMA mappings */
188
189 return (dma_stat & 7) != 4; /* verify good DMA status */ 185 return (dma_stat & 7) != 4; /* verify good DMA status */
190} 186}
191 187
@@ -291,7 +287,6 @@ static const struct ide_dma_ops sc1200_dma_ops = {
291 .dma_test_irq = ide_dma_test_irq, 287 .dma_test_irq = ide_dma_test_irq,
292 .dma_lost_irq = ide_dma_lost_irq, 288 .dma_lost_irq = ide_dma_lost_irq,
293 .dma_timer_expiry = ide_dma_sff_timer_expiry, 289 .dma_timer_expiry = ide_dma_sff_timer_expiry,
294 .dma_timeout = ide_dma_timeout,
295 .dma_sff_read_status = ide_dma_sff_read_status, 290 .dma_sff_read_status = ide_dma_sff_read_status,
296}; 291};
297 292