Hello, all. This is the first take of prefer-hardreset patchset. I've been meaning to do this for quite some time now. Preferring softreset over hardreset seemed okay at the beginning but libata has been and continue accumulating more and more quirks to promote reset to COMRESET to avoid SRST failure. For example, any host which supports PMP should use COMRESET because some PMPs don't reset properly only with SRST. Another interesting example is PMP fan-out ports. Depending on how the spec is read, the fan-out ports arguably requires hardreset to begin operation. Also, SRST doesn't reset certain aspects of device configuration and can result in inconsistent configurations which may lead to revalidation failure after a PHY event or resume. I can't find any merit of preferring SRST other than the warm fuzzy feeling of the word 'soft' in front of it, especially when preferring SRST means libata has to carray a bunch of quirks to avoid SRST for cases it might not work. For more rationales, please read patch description of the first patch. This patchset contains five patches. The first one makes libata prefer COMRESET and the rest four kills quirks and simplifes related codes. This patchset is against the current upstream (a984f58d). drivers/ata/ahci.c | 16 ++---- drivers/ata/libata-core.c | 28 ++--------- drivers/ata/libata-eh.c | 114 ++++++++++++++++------------------------------ drivers/ata/libata-pmp.c | 57 ++++++----------------- drivers/ata/libata-scsi.c | 7 +- drivers/ata/sata_fsl.c | 4 - drivers/ata/sata_mv.c | 29 ++--------- drivers/ata/sata_nv.c | 17 ++---- drivers/ata/sata_sil.c | 5 -- drivers/ata/sata_sil24.c | 58 ++++++++++------------- drivers/ata/sata_via.c | 2 include/linux/libata.h | 24 ++------- 12 files changed, 120 insertions(+), 241 deletions(-) Thanks. -- tejun - To unsubscribe from this list: send the line "unsubscribe linux-ide" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html