Patchwork [#upstream-fixes] libata: apply NOSETXFER horkage to the affected drives regardless of firmware revision

login
register
mail settings
Submitter Tejun Heo
Date June 22, 2011, 10:13 a.m.
Message ID <20110622101310.GD30101@htj.dyndns.org>
Download mbox | patch
Permalink /patch/101430/
State Not Applicable
Delegated to: David Miller
Headers show

Comments

Tejun Heo - June 22, 2011, 10:13 a.m.
It's unlikely NOSETXFER works for a revision of drive but doesn't for
another and pioneer doesn't seem to be fixing firmwares for the
affected drives.  Apply NOSETXFER to the affected pioneer drives
regardless of firmware revision.

  http://article.gmane.org/gmane.linux.ide/49734

Signed-off-by: Tejun Heo <tj@kernel.org>
Reported-by: fl-00@gmx.de
---
> 1) is it possible to include the dvd-216d with rev. 1.09 as well (or
> even better: with any revision)

Done.

> 2) is there some plan how to cope with such "broken" drives in
> general without the need to include every single drive in the code?

Given that these are the only drives which are affected, I think it
would be better to keep quirks for these ones instead of changing the
generic behavior.

Thanks.

 drivers/ata/libata-core.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

--
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c
index 736bee5..000d03a 100644
--- a/drivers/ata/libata-core.c
+++ b/drivers/ata/libata-core.c
@@ -4143,9 +4143,9 @@  static const struct ata_blacklist_entry ata_device_blacklist [] = {
 	 * Devices which choke on SETXFER.  Applies only if both the
 	 * device and controller are SATA.
 	 */
-	{ "PIONEER DVD-RW  DVRTD08",	"1.00",	ATA_HORKAGE_NOSETXFER },
-	{ "PIONEER DVD-RW  DVR-212D",	"1.28", ATA_HORKAGE_NOSETXFER },
-	{ "PIONEER DVD-RW  DVR-216D",	"1.08", ATA_HORKAGE_NOSETXFER },
+	{ "PIONEER DVD-RW  DVRTD08",	NULL,	ATA_HORKAGE_NOSETXFER },
+	{ "PIONEER DVD-RW  DVR-212D",	NULL,	ATA_HORKAGE_NOSETXFER },
+	{ "PIONEER DVD-RW  DVR-216D",	NULL,	ATA_HORKAGE_NOSETXFER },
 
 	/* End Marker */
 	{ }