diff options
author | Tejun Heo <htejun@gmail.com> | 2008-05-21 14:11:24 +0900 |
---|---|---|
committer | Jeff Garzik <jgarzik@redhat.com> | 2008-05-30 12:37:56 -0400 |
commit | 19ef9d5e45ce805700f34c248a71a511877b8a5d (patch) | |
tree | 4ee73bc26ce18704fc98e14393b899980b9a1ffe /drivers/ata/libata-pmp.c | |
parent | ec2a20e61974f7c9ebe6dd99ac479ec309a750bc (diff) | |
download | lwn-19ef9d5e45ce805700f34c248a71a511877b8a5d.tar.gz lwn-19ef9d5e45ce805700f34c248a71a511877b8a5d.zip |
libata: SRST can't be trusted on PMP sil3726
As in sil4726, SRST can't be trusted on sil3726 causing detection
problems under certain configuraitons. I thought it was from the
Config Disk device but apparently not.
Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
Diffstat (limited to 'drivers/ata/libata-pmp.c')
-rw-r--r-- | drivers/ata/libata-pmp.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/ata/libata-pmp.c b/drivers/ata/libata-pmp.c index 0f9386d4a5a0..7daf4c0f6216 100644 --- a/drivers/ata/libata-pmp.c +++ b/drivers/ata/libata-pmp.c @@ -322,9 +322,12 @@ static void sata_pmp_quirks(struct ata_port *ap) if (vendor == 0x1095 && devid == 0x3726) { /* sil3726 quirks */ ata_port_for_each_link(link, ap) { - /* class code report is unreliable */ + /* Class code report is unreliable and SRST + * times out under certain configurations. + */ if (link->pmp < 5) - link->flags |= ATA_LFLAG_ASSUME_ATA; + link->flags |= ATA_LFLAG_NO_SRST | + ATA_LFLAG_ASSUME_ATA; /* port 5 is for SEMB device and it doesn't like SRST */ if (link->pmp == 5) |