1
0
mirror of https://git.FreeBSD.org/src.git synced 2024-11-28 08:02:54 +00:00

Disable ATA DMA for ATAPI devices for now. Apparently, certain revisions

of this controller, in combination with certain ATAPI devices and phases
of the moon, will cause DMA operations for ATAPI to fail.
This commit is contained in:
Nathan Whitehorn 2009-03-25 03:42:49 +00:00
parent 0cd9c215fa
commit 09b29530db
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=190403

View File

@ -259,6 +259,10 @@ ata_macio_setmode(device_t parent, device_t dev)
mode = ata_limit_mode(dev, mode, sc->max_mode);
/* XXX Some controllers don't work correctly with ATAPI DMA */
if (atadev->param.config & ATA_PROTO_ATAPI)
mode = ata_limit_mode(dev, mode, ATA_PIO_MAX);
if (ata_controlcmd(dev, ATA_SETFEATURES, ATA_SF_SETXFER, 0, mode))
return;