patch-2.2.0-pre2 linux/drivers/block/ide-dma.c
Next file: linux/drivers/block/ide-tape.c
Previous file: linux/drivers/block/ide-disk.c
Back to the patch index
Back to the overall index
- Lines: 45
- Date:
Tue Dec 29 11:14:57 1998
- Orig file:
v2.2.0-pre1/linux/drivers/block/ide-dma.c
- Orig date:
Fri Oct 23 22:01:20 1998
diff -u --recursive --new-file v2.2.0-pre1/linux/drivers/block/ide-dma.c linux/drivers/block/ide-dma.c
@@ -68,8 +68,9 @@
* SIIG's UltraIDE Pro CN-2449
* TTI HPT343 Chipset "Modified SCSI Class" but reports as an
* unknown storage device.
- * NEW check_drive_lists(ide_drive_t *drive, int good_bad)
+ * NEW check_drive_lists(ide_drive_t *drive, int good_bad)
*/
+
#include <linux/config.h>
#include <linux/types.h>
#include <linux/kernel.h>
@@ -91,9 +92,8 @@
*/
const char *good_dma_drives[] = {"Micropolis 2112A",
"CONNER CTMA 4000",
+ "CONNER CTT8000-A",
"ST34342A", /* for Sun Ultra */
- "WDC AC2340F", /* DMA mode1 */
- "WDC AC2340H", /* DMA mode1 */
NULL};
/*
@@ -101,7 +101,10 @@
* of drives which supposedly support (U)DMA but which are
* known to corrupt data with this interface under Linux.
*/
-const char *bad_dma_drives[] = {"WDC AC22100H",
+const char *bad_dma_drives[] = {"WDC AC11000H",
+ "WDC AC22100H",
+ "WDC AC32500H",
+ "WDC AC33100H",
NULL};
/*
@@ -331,8 +334,8 @@
return 0;
case ide_dma_end: /* returns 1 on error, 0 otherwise */
drive->waiting_for_dma = 0;
- dma_stat = inb(dma_base+2);
- outb(inb(dma_base)&~1, dma_base); /* stop DMA */
+ outb(inb(dma_base)&~1, dma_base); /* stop DMA */
+ dma_stat = inb(dma_base+2); /* get DMA status */
outb(dma_stat|6, dma_base+2); /* clear the INTR & ERROR bits */
return (dma_stat & 7) != 4; /* verify good DMA status */
case ide_dma_test_irq: /* returns 1 if dma irq issued, 0 otherwise */
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen, slshen@lbl.gov