diff options
| author | Evan Wang <[email protected]> | 2018-04-13 04:32:30 +0000 |
|---|---|---|
| committer | Tejun Heo <[email protected]> | 2018-04-26 18:25:04 +0000 |
| commit | fa89f53bd7288d6aa7a982841119e7123faf5a53 (patch) | |
| tree | edcd32381580db6a29a58a681df8ee70dd7d8a68 /lib/mpi/mpicoder.c | |
| parent | Revert "ata: ahci-platform: add reset control support" (diff) | |
| download | kernel-fa89f53bd7288d6aa7a982841119e7123faf5a53.tar.gz kernel-fa89f53bd7288d6aa7a982841119e7123faf5a53.zip | |
libahci: Allow drivers to override stop_engine
Marvell armada37xx, armada7k and armada8k share the same
AHCI sata controller IP, and currently there is an issue
(Errata Ref#226)that the SATA can not be detected via SATA
Port-MultiPlayer(PMP). After debugging, the reason is
found that the value of Port-x FIS-based Switching Control
(PxFBS@0x40) became wrong.
According to design, the bits[11:8, 0] of register PxFBS
are cleared when Port Command and Status (0x18) bit[0]
changes its value from 1 to 0, i.e. falling edge of Port
Command and Status bit[0] sends PULSE that resets PxFBS
bits[11:8; 0].
So it needs save the port PxFBS register before PxCMD
ST write and restore the port PxFBS register afterwards
in ahci_stop_engine().
This commit allows drivers to override ahci_stop_engine
behavior for use by the Marvell AHCI driver(and potentially
other drivers in the future).
Signed-off-by: Evan Wang <[email protected]>
Cc: Ofer Heifetz <[email protected]>
Cc: Tejun Heo <[email protected]>
Cc: Thomas Petazzoni <[email protected]>
Signed-off-by: Tejun Heo <[email protected]>
Diffstat (limited to 'lib/mpi/mpicoder.c')
0 files changed, 0 insertions, 0 deletions
