OSDN Git Service

ata: ahci_brcm: BCM7425 AHCI requires AHCI_HFLAG_DELAY_ENGINE
authorFlorian Fainelli <f.fainelli@gmail.com>
Tue, 10 Dec 2019 18:53:46 +0000 (10:53 -0800)
committerJens Axboe <axboe@kernel.dk>
Thu, 26 Dec 2019 03:47:23 +0000 (20:47 -0700)
commit1a3d78cb6e20779a19388315bd8efefbd8d4a656
tree31c4a82dbfe9749b8413b85c5d95e921e028b0f4
parentc0cdf2ac4b5bf3e5ef2451ea29fb4104278cdabc
ata: ahci_brcm: BCM7425 AHCI requires AHCI_HFLAG_DELAY_ENGINE

Set AHCI_HFLAG_DELAY_ENGINE for the BCM7425 AHCI controller thus making
it conforming to the 'strict' AHCI implementation which this controller
is based on.

This solves long link establishment with specific hard drives (e.g.:
Seagate ST1000VM002-9ZL1 SC12) that would otherwise have to complete the
error recovery handling before finally establishing a succesful SATA
link at the desired speed.

We re-order the hpriv->flags assignment to also remove the NONCQ quirk
since we can set the flag directly.

Fixes: 9586114cf1e9 ("ata: ahci_brcmstb: add support MIPS-based platforms")
Fixes: 423be77daabe ("ata: ahci_brcmstb: add quirk for broken ncq")
Cc: stable@vger.kernel.org
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/ata/ahci_brcm.c