diff options
author | Alexander Yurchenko <grange@cvs.openbsd.org> | 2003-07-23 22:10:37 +0000 |
---|---|---|
committer | Alexander Yurchenko <grange@cvs.openbsd.org> | 2003-07-23 22:10:37 +0000 |
commit | c9c75857b3fcb42911dff92cb88f5dfc12d0d8e3 (patch) | |
tree | 05786b12c0543fa14d3df7d08123438991544543 /sys | |
parent | c828fcd5606221baa4bcf2cda327d01774e99bb3 (diff) |
Enable ATAPI DMA for modern Promise ATA controllers since only old
ones have problems with it. Tested on PDC20262/268/269.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/dev/pci/pciide.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/dev/pci/pciide.c b/sys/dev/pci/pciide.c index 76b7cef8c4d..193ba069987 100644 --- a/sys/dev/pci/pciide.c +++ b/sys/dev/pci/pciide.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pciide.c,v 1.134 2003/07/23 22:07:15 grange Exp $ */ +/* $OpenBSD: pciide.c,v 1.135 2003/07/23 22:10:36 grange Exp $ */ /* $NetBSD: pciide.c,v 1.127 2001/08/03 01:31:08 tsutsui Exp $ */ /* @@ -4591,7 +4591,10 @@ pdc202xx_chip_map(sc, pa) pciide_mapreg_dma(sc, pa); sc->sc_wdcdev.cap = WDC_CAPABILITY_DATA16 | WDC_CAPABILITY_DATA32 | - WDC_CAPABILITY_MODE | WDC_CAPABILITY_NO_ATAPI_DMA; + WDC_CAPABILITY_MODE; + if (sc->sc_pp->ide_product == PCI_PRODUCT_PROMISE_PDC20246 || + PDC_IS_262(sc)) + sc->sc_wdcdev.cap |= WDC_CAPABILITY_NO_ATAPI_DMA; if (sc->sc_dma_ok) { sc->sc_wdcdev.cap |= WDC_CAPABILITY_DMA | WDC_CAPABILITY_UDMA; sc->sc_wdcdev.cap |= WDC_CAPABILITY_IRQACK; |