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;