linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/1] libata: minor patch for ATA_DFLAG_PIO
@ 2006-06-20 12:35 Albert Lee
  2006-06-23  3:14 ` Jeff Garzik
  0 siblings, 1 reply; 2+ messages in thread
From: Albert Lee @ 2006-06-20 12:35 UTC (permalink / raw)
  To: Jeff Garzik; +Cc: Tejun Heo, Doug Maxey, Linux IDE, Unicorn Chang

Problem:
 - With 2.6.17, some PIO-only devices are given DMA commands.

Changes:
 - Do not clear the ATA_DFLAG_PIO flag in ata_dev_configure().

Original patch by Tejun.
Signed-off-by: Albert Lee <albertcc@tw.ibm.com>

--
The patch is done by Tejun and already in libata-dev upstream.
Maybe we also need this for 2.6.17.

For your review, thanks.

albert

diff -Nrup linux-2.6.17-0/drivers/scsi/libata-core.c linux-2.6.17-1/drivers/scsi/libata-core.c
--- linux-2.6.17-0/drivers/scsi/libata-core.c	2006-06-18 09:49:35.000000000 +0800
+++ linux-2.6.17-1/drivers/scsi/libata-core.c	2006-06-20 16:56:14.000000000 +0800
@@ -1229,7 +1229,7 @@ static int ata_dev_configure(struct ata_
 		       id[84], id[85], id[86], id[87], id[88]);
 
 	/* initialize to-be-configured parameters */
-	dev->flags = 0;
+	dev->flags &= ~ATA_DFLAG_CFG_MASK;
 	dev->max_sectors = 0;
 	dev->cdb_len = 0;
 	dev->n_sectors = 0;
diff -Nrup linux-2.6.17-0/include/linux/libata.h linux-2.6.17-1/include/linux/libata.h
--- linux-2.6.17-0/include/linux/libata.h	2006-06-18 09:49:35.000000000 +0800
+++ linux-2.6.17-1/include/linux/libata.h	2006-06-20 16:55:41.000000000 +0800
@@ -120,9 +120,12 @@ enum {
 	ATA_SHT_USE_CLUSTERING	= 1,
 
 	/* struct ata_device stuff */
-	ATA_DFLAG_LBA48		= (1 << 0), /* device supports LBA48 */
-	ATA_DFLAG_PIO		= (1 << 1), /* device currently in PIO mode */
-	ATA_DFLAG_LBA		= (1 << 2), /* device supports LBA */
+	ATA_DFLAG_LBA		= (1 << 0), /* device supports LBA */
+	ATA_DFLAG_LBA48		= (1 << 1), /* device supports LBA48 */
+
+	ATA_DFLAG_CFG_MASK	= (1 << 8) - 1,
+
+	ATA_DFLAG_PIO		= (1 << 8), /* device currently in PIO mode */
 
 	ATA_DEV_UNKNOWN		= 0,	/* unknown device */
 	ATA_DEV_ATA		= 1,	/* ATA device */



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH 1/1] libata: minor patch for ATA_DFLAG_PIO
  2006-06-20 12:35 [PATCH 1/1] libata: minor patch for ATA_DFLAG_PIO Albert Lee
@ 2006-06-23  3:14 ` Jeff Garzik
  0 siblings, 0 replies; 2+ messages in thread
From: Jeff Garzik @ 2006-06-23  3:14 UTC (permalink / raw)
  To: albertl; +Cc: Tejun Heo, Doug Maxey, Linux IDE, Unicorn Chang, Alan Cox

Albert Lee wrote:
> Problem:
>  - With 2.6.17, some PIO-only devices are given DMA commands.
> 
> Changes:
>  - Do not clear the ATA_DFLAG_PIO flag in ata_dev_configure().
> 
> Original patch by Tejun.
> Signed-off-by: Albert Lee <albertcc@tw.ibm.com>
> 
> --
> The patch is done by Tejun and already in libata-dev upstream.
> Maybe we also need this for 2.6.17.
> 
> For your review, thanks.
> 
> albert
> 
> diff -Nrup linux-2.6.17-0/drivers/scsi/libata-core.c linux-2.6.17-1/drivers/scsi/libata-core.c
> --- linux-2.6.17-0/drivers/scsi/libata-core.c	2006-06-18 09:49:35.000000000 +0800
> +++ linux-2.6.17-1/drivers/scsi/libata-core.c	2006-06-20 16:56:14.000000000 +0800
> @@ -1229,7 +1229,7 @@ static int ata_dev_configure(struct ata_
>  		       id[84], id[85], id[86], id[87], id[88]);
>  
>  	/* initialize to-be-configured parameters */
> -	dev->flags = 0;
> +	dev->flags &= ~ATA_DFLAG_CFG_MASK;
>  	dev->max_sectors = 0;
>  	dev->cdb_len = 0;
>  	dev->n_sectors = 0;
> diff -Nrup linux-2.6.17-0/include/linux/libata.h linux-2.6.17-1/include/linux/libata.h
> --- linux-2.6.17-0/include/linux/libata.h	2006-06-18 09:49:35.000000000 +0800
> +++ linux-2.6.17-1/include/linux/libata.h	2006-06-20 16:55:41.000000000 +0800
> @@ -120,9 +120,12 @@ enum {
>  	ATA_SHT_USE_CLUSTERING	= 1,
>  
>  	/* struct ata_device stuff */
> -	ATA_DFLAG_LBA48		= (1 << 0), /* device supports LBA48 */
> -	ATA_DFLAG_PIO		= (1 << 1), /* device currently in PIO mode */
> -	ATA_DFLAG_LBA		= (1 << 2), /* device supports LBA */
> +	ATA_DFLAG_LBA		= (1 << 0), /* device supports LBA */
> +	ATA_DFLAG_LBA48		= (1 << 1), /* device supports LBA48 */
> +
> +	ATA_DFLAG_CFG_MASK	= (1 << 8) - 1,
> +
> +	ATA_DFLAG_PIO		= (1 << 8), /* device currently in PIO mode */

ACK for 2.6.17, if you would like to send it to stable@kernel.org...

	Jeff



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2006-06-23  3:15 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-06-20 12:35 [PATCH 1/1] libata: minor patch for ATA_DFLAG_PIO Albert Lee
2006-06-23  3:14 ` Jeff Garzik

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).