diff options
author | Florian Fainelli <f.fainelli@gmail.com> | 2018-01-12 04:31:08 +0300 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2018-01-17 18:52:29 +0300 |
commit | eb73390ae2413bbd5d56a396dfd79fe57de6b5ae (patch) | |
tree | bee3bca6ea2e4705347044af06b86d926680d122 /drivers/ata/ahci_dm816.c | |
parent | 3e507769d15e4b14b5a3688d7f5cba516cb4e72d (diff) | |
download | linux-eb73390ae2413bbd5d56a396dfd79fe57de6b5ae.tar.xz |
ata: ahci_brcm: Recover from failures to identify devices
When powering up, the SATA controller may fail to mount the HDD. The SATA
controller will lock up, preventing it from negotiating to a lower speed or
transmitting data. Root cause is power supply noise creating resonance at 6 Ghz
and 3 GHz frequencies, which causes instability in the Clock-Data Recovery
(CDR) frontend module, resulting in false acquisition of the clock at SATA
6G/3G speeds.
The SATA controller may fail to mount the HDD and lock up, requiring a power
cycle. Broadcom chips suspected of being susceptible to this issue include
BCM7445, BCM7439, and BCM7366.
The Kernel implements an error recovery mechanism that resets the SATA PHY and
digital controller when the controller locks up. During this error recovery
process, typically there is less activity on the board and Broadcom STB chip,
so that the power supply is less noisy, thus allowing the SATA controller to
lock correctly.
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'drivers/ata/ahci_dm816.c')
0 files changed, 0 insertions, 0 deletions