libata: skip SRST for all SIMG [34]7x port-multipliers
authorTejun Heo <tj@kernel.org>
Tue, 11 Jun 2013 07:11:36 +0000 (00:11 -0700)
committerBen Hutchings <ben@decadent.org.uk>
Sat, 27 Jul 2013 04:34:09 +0000 (05:34 +0100)
commitc2ecb14d22b1e99a9dcdef8d20a37762c45e6e67
tree23268e6d22b7576e6e2df9ae38fb93cb5a26b52a
parentc818402a62e9b82e5c8552479a2c56bb8cdca3d9
libata: skip SRST for all SIMG [34]7x port-multipliers

commit 7a87718d92760fc688628ad6a430643dafa16f1f upstream.

For some reason, a lot of port-multipliers have issues with softreset.
SIMG [34]7x series port-multipliers have been quite erratic in this
regard.  I recall that it was better with some firmware revisions and
the current list of quirks worked fine for a while.  I think it got
worse with later firmwares or maybe my test coverage wasn't good
enough.  Anyways, HPA is reporting that his 3726 setup suffers SRST
failures and then the PMP gets confused and fails to probe the last
port.

The hope was that we try to stick to the standard as much as possible
and soonish the PMPs and their firmwares will improve in quality, so
the quirk list was kept to minimum.  Well, it seems like that's never
gonna happen.

Let's set NO_SRST for all [34]7x PMPs so that whatever remaining
userbase of the device suffer the least.  Maybe we should do the same
for 57xx's but unfortunately I don't have any device left to test and
I'm not even sure 57xx's have ever been made widely available, so
let's leave those alone for now.

Signed-off-by: Tejun Heo <tj@kernel.org>
Reported-by: "H. Peter Anvin" <hpa@zytor.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
drivers/ata/libata-pmp.c