From 4d732ca660e0d3576173a39e004a2f16c4c391f4 Mon Sep 17 00:00:00 2001 From: Pavel Herrmann Date: Thu, 28 Apr 2011 22:32:54 +0200 Subject: [PATCH] --- yaml --- r: 247757 b: refs/heads/master c: 0afc6f5ba95419fd505e60637f7645425f16e407 h: refs/heads/master i: 247755: 937a47cd966dacbc78cb6c607e17a6d40f9b6118 v: v3 --- [refs] | 2 +- trunk/drivers/ata/libata-pmp.c | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 7f6a8d788884..e0bcdc22d279 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: bfeec8ca15c9c06c1978a25248e2bd11c4a26d72 +refs/heads/master: 0afc6f5ba95419fd505e60637f7645425f16e407 diff --git a/trunk/drivers/ata/libata-pmp.c b/trunk/drivers/ata/libata-pmp.c index 3120596d4afc..f06b7ea590d3 100644 --- a/trunk/drivers/ata/libata-pmp.c +++ b/trunk/drivers/ata/libata-pmp.c @@ -449,6 +449,16 @@ static void sata_pmp_quirks(struct ata_port *ap) * otherwise. Don't try hard to recover it. */ ap->pmp_link[ap->nr_pmp_links - 1].flags |= ATA_LFLAG_NO_RETRY; + } else if (vendor == 0x197b && devid == 0x2352) { + /* chip found in Thermaltake BlackX Duet, jmicron JMB350? */ + ata_for_each_link(link, ap, EDGE) { + /* SRST breaks detection and disks get misclassified + * LPM disabled to avoid potential problems + */ + link->flags |= ATA_LFLAG_NO_LPM | + ATA_LFLAG_NO_SRST | + ATA_LFLAG_ASSUME_ATA; + } } }