Merge branch 'for-2.6.40/drivers' of git://git.kernel.dk/linux-2.6-block
[firefly-linux-kernel-4.4.55.git] / drivers / ata / libata-pmp.c
index 3120596d4afc9aaba293f100f7a075ace6438f9e..f06b7ea590d32b54ed48452013197e6eec910bad 100644 (file)
@@ -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;
+               }
        }
 }