svn commit: r190403 - head/sys/powerpc/powermac

Weongyo Jeong weongyo.jeong at gmail.com
Wed Mar 25 19:14:32 PDT 2009


On Wed, Mar 25, 2009 at 03:42:49AM +0000, Nathan Whitehorn wrote:
> 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;

With this commit my iBook G4 boots successfully without setting
`hw.ata.atapi_dma=0'.  Thanks!  It'd be best if I can use ATAPI DMA
soon.

regards,
Weongyo Jeong



More information about the svn-src-all mailing list