Does the attached patch make any difference?
--
tejun
---
drivers/ata/libata-core.c | 1 +
1 file changed, 1 insertion(+)
Index: work1/drivers/ata/libata-core.c
===================================================================
--- work1.orig/drivers/ata/libata-core.c
+++ work1/drivers/ata/libata-core.c
@@ -6211,6 +6211,7 @@ int sata_link_init_spd(struct ata_link *
spd = (scontrol >> 4) & 0xf;
if (spd)
link->hw_sata_spd_limit &= (1 << spd) - 1;
+ link->hw_sata_spd_limit = 1
link->sata_spd_limit = link->hw_sata_spd_limit;