aboutsummaryrefslogtreecommitdiff
path: root/sys/powerpc
diff options
context:
space:
mode:
authorNathan Whitehorn <nwhitehorn@FreeBSD.org>2009-03-25 03:42:49 +0000
committerNathan Whitehorn <nwhitehorn@FreeBSD.org>2009-03-25 03:42:49 +0000
commit09b29530db6689afca2d2d8f90dfd2a7303249cd (patch)
tree1dc5d5264da4cf6495d9da7967e31ae6eafbd974 /sys/powerpc
parent0cd9c215fa35dad7ae9e49ff93c70e15829b4bb0 (diff)
Notes
Diffstat (limited to 'sys/powerpc')
-rw-r--r--sys/powerpc/powermac/ata_macio.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/powerpc/powermac/ata_macio.c b/sys/powerpc/powermac/ata_macio.c
index 482f76e0b779..320e86e33819 100644
--- a/sys/powerpc/powermac/ata_macio.c
+++ b/sys/powerpc/powermac/ata_macio.c
@@ -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;