28c28
< * $FreeBSD: head/sys/dev/ata/ata-dma.c 60041 2000-05-05 09:59:14Z phk $
---
> * $FreeBSD: head/sys/dev/ata/ata-dma.c 60829 2000-05-23 19:05:56Z sos $
95a96,100
> if (udmamode > 2 && !ATA_PARAM(scp, device)->cblid) {
> ata_printf(scp, device,
> "DMA limitted to UDMA33, non-ATA66 compliant cable\n");
> udmamode = 2;
> }
253,254c258,259
< word54 |= 0x5555;
< word54 |= (0x0a << (16 + (scp->unit << 3) + (device << 2)));
---
> word54 &= ~(0x000f000f << (devno << 2));
> word54 |= (0x000a0005 << (devno << 2));
338,339c343
< if ((udmamode >= 2 && scp->chiptype == 0x05861106 &&
< pci_read_config(scp->dev, 0x08, 1) >= 0x01) ||
---
> if ((udmamode >= 2 && ata_find_dev(parent, 0x05861106, 0x02)) ||
< * $FreeBSD: head/sys/dev/ata/ata-dma.c 60041 2000-05-05 09:59:14Z phk $
---
> * $FreeBSD: head/sys/dev/ata/ata-dma.c 60829 2000-05-23 19:05:56Z sos $
95a96,100
> if (udmamode > 2 && !ATA_PARAM(scp, device)->cblid) {
> ata_printf(scp, device,
> "DMA limitted to UDMA33, non-ATA66 compliant cable\n");
> udmamode = 2;
> }
253,254c258,259
< word54 |= 0x5555;
< word54 |= (0x0a << (16 + (scp->unit << 3) + (device << 2)));
---
> word54 &= ~(0x000f000f << (devno << 2));
> word54 |= (0x000a0005 << (devno << 2));
338,339c343
< if ((udmamode >= 2 && scp->chiptype == 0x05861106 &&
< pci_read_config(scp->dev, 0x08, 1) >= 0x01) ||
---
> if ((udmamode >= 2 && ata_find_dev(parent, 0x05861106, 0x02)) ||