No, my device doesn't work with 6Gbps. In kernel 4.14 if my drive was
offline, function sata_down_spd_limit() cut down link->sata_spd_limit to
1, so it corresponds to 1.5Gbps, and was working. But it wasn't even try
to set limit to 3Gbps.

In my device, unfortunately mask and link->sata_spd_limit is set to
INT_MAX, so next bitwise operations doesn't make any sense, because mask
is far out of range valid values.

Setting link->sata_spd_limit = 0x7 doesn't work (my device is not 6Gbps
capable). In patch I cut mask to be not greater than 0x7, not just 0x7.
Actually after masking, kernel tries to connect with 3Gbps (mask 0x3)
and it succeed.

About comment and hard reset. I get your patch and modified it leaving
commit message and comment in code untouched. I don't investigate this
topic enough. I have to check how working __sata_set_spd_needed() and
sata_link_hardreset() functions.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1783906

Title:
  Linux 4.15 and onwards fails to initialize some hard drives

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1783906/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to