Revision 3dbcea54b3ff706c58f8e8d4470f5e5d3d24a6a0 authored by Mark Rutland on 15 March 2019, 12:22:36 UTC, committed by Catalin Marinas on 19 March 2019, 14:54:24 UTC
Fujitsu erratum 010001 applies to A64FX v0r0 and v1r0, and we try to
handle either by masking MIDR with MIDR_FUJITSU_ERRATUM_010001_MASK
before comparing it to MIDR_FUJITSU_ERRATUM_010001.

Unfortunately, MIDR_FUJITSU_ERRATUM_010001 is constructed incorrectly
using MIDR_VARIANT(), which is intended to extract the variant field
from MIDR_EL1, rather than generate the field in-place. This results in
MIDR_FUJITSU_ERRATUM_010001 being all-ones, and we only match A64FX
v0r0.

This patch uses MIDR_CPU_VAR_REV() to generate an in-place mask for the
variant field, ensuring the we match both v0r0 and v1r0.

Fixes: 3e32131abc311a5c ("arm64: Add workaround for Fujitsu A64FX erratum 010001")
Reported-by: "Okamoto, Takayuki" <tokamoto@jp.fujitsu.com>
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
[catalin.marinas@arm.com: fixed the patch author]
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
1 parent 6a019a9
History
File Mode Size
controller
endpoint
hotplug
pcie
switch
Kconfig -rw-r--r-- 5.1 KB
Makefile -rw-r--r-- 1.2 KB
access.c -rw-r--r-- 15.1 KB
ats.c -rw-r--r-- 10.3 KB
bus.c -rw-r--r-- 10.3 KB
ecam.c -rw-r--r-- 4.0 KB
host-bridge.c -rw-r--r-- 2.4 KB
iov.c -rw-r--r-- 20.9 KB
irq.c -rw-r--r-- 3.9 KB
mmap.c -rw-r--r-- 2.6 KB
msi.c -rw-r--r-- 38.9 KB
of.c -rw-r--r-- 14.2 KB
p2pdma.c -rw-r--r-- 20.8 KB
pci-acpi.c -rw-r--r-- 23.8 KB
pci-bridge-emul.c -rw-r--r-- 11.7 KB
pci-bridge-emul.h -rw-r--r-- 3.2 KB
pci-driver.c -rw-r--r-- 41.3 KB
pci-label.c -rw-r--r-- 7.3 KB
pci-mid.c -rw-r--r-- 1.7 KB
pci-pf-stub.c -rw-r--r-- 1.4 KB
pci-stub.c -rw-r--r-- 2.4 KB
pci-sysfs.c -rw-r--r-- 42.7 KB
pci.c -rw-r--r-- 165.1 KB
pci.h -rw-r--r-- 18.4 KB
probe.c -rw-r--r-- 84.4 KB
proc.c -rw-r--r-- 9.3 KB
quirks.c -rw-r--r-- 180.2 KB
remove.c -rw-r--r-- 3.7 KB
rom.c -rw-r--r-- 5.7 KB
search.c -rw-r--r-- 12.2 KB
setup-bus.c -rw-r--r-- 56.8 KB
setup-irq.c -rw-r--r-- 1.6 KB
setup-res.c -rw-r--r-- 12.7 KB
slot.c -rw-r--r-- 10.5 KB
syscall.c -rw-r--r-- 2.7 KB
vc.c -rw-r--r-- 12.0 KB
vpd.c -rw-r--r-- 15.7 KB
xen-pcifront.c -rw-r--r-- 27.5 KB

back to top