Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 25 Mar 2009 03:42:49 +0000 (UTC)
From:      Nathan Whitehorn <nwhitehorn@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r190403 - head/sys/powerpc/powermac
Message-ID:  <200903250342.n2P3gnxa064756@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: nwhitehorn
Date: Wed Mar 25 03:42:49 2009
New Revision: 190403
URL: http://svn.freebsd.org/changeset/base/190403

Log:
  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.

Modified:
  head/sys/powerpc/powermac/ata_macio.c

Modified: head/sys/powerpc/powermac/ata_macio.c
==============================================================================
--- head/sys/powerpc/powermac/ata_macio.c	Wed Mar 25 03:02:03 2009	(r190402)
+++ head/sys/powerpc/powermac/ata_macio.c	Wed Mar 25 03:42:49 2009	(r190403)
@@ -259,6 +259,10 @@ ata_macio_setmode(device_t parent, devic
 
 	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;
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200903250342.n2P3gnxa064756>