]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/commitdiff
UBUNTU: SAUCE: ahci: thunderx2: stop engine fix update
authorJayachandran C <jnair@caviumnetworks.com>
Fri, 22 Sep 2017 21:46:51 +0000 (15:46 -0600)
committerSeth Forshee <seth.forshee@canonical.com>
Mon, 25 Sep 2017 21:18:24 +0000 (17:18 -0400)
BugLink: https://bugs.launchpad.net/bugs/1719031
The stop engine errata fix currently checks only for the CN99XX Ax MIDR, so
the changes are applied even to external SATA controllers connected to the
CN99XX board.

Fix the errata check to include PCI ID so that the fix is applied only
to th onboard SATA.

[ dannf: *** There is no need to carry this forward beyond artful *** ]
Signed-off-by: dann frazier <dann.frazier@canonical.com>
Signed-off-by: Seth Forshee <seth.forshee@canonical.com>
drivers/ata/libahci.c

index 22eacef13bab3969a27d9b96d8cc7aa4d8b683cc..9116bba1b07dfa8109a18db9aa4a9f53fbe3df1a 100644 (file)
@@ -671,7 +671,10 @@ int ahci_stop_engine(struct ata_port *ap)
 
 #ifdef CONFIG_ARM64
        /* Rev Ax of Cavium CN99XX needs a hack for port stop */
-       if (MIDR_IS_CPU_MODEL_RANGE(read_cpuid_id(),
+       if (dev_is_pci(ap->host->dev) &&
+           to_pci_dev(ap->host->dev)->vendor == 0x14e4 &&
+           to_pci_dev(ap->host->dev)->device == 0x9027 &&
+           MIDR_IS_CPU_MODEL_RANGE(read_cpuid_id(),
                        MIDR_CPU_MODEL(ARM_CPU_IMP_BRCM, BRCM_CPU_PART_VULCAN),
                        MIDR_CPU_VAR_REV(0, 0),
                        MIDR_CPU_VAR_REV(0, MIDR_REVISION_MASK))) {