aboutsummaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorStephen Boyd <sboyd@codeaurora.org>2014-10-14 06:48:57 -0700
committerSrinivas Kandagatla <srinivas.kandagatla@linaro.org>2014-11-10 07:22:46 +0000
commit0354f29a55411dd8dee142c699a68961b154f94f (patch)
treec964bb667186d92fbeb0214768dc2bd06aff0521 /arch
parentc1caa66f3f7640401067202da684c97b63b147d4 (diff)
ARM: vfp: Workaround bad MVFR1 register on some Kraits
Certain versions of the Krait processor don't report that they support the fused multiply accumulate instruction via the MVFR1 register despite the fact that they actually do. Unfortunately we use this register to identify support for VFPv4. Override the hwcap on all Krait processors to indicate support for VFPv4 to workaround this. Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/arm/mm/proc-v7.S5
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/arm/mm/proc-v7.S b/arch/arm/mm/proc-v7.S
index b3a947863ac7..6c33eaf879ae 100644
--- a/arch/arm/mm/proc-v7.S
+++ b/arch/arm/mm/proc-v7.S
@@ -593,9 +593,10 @@ __krait_proc_info:
/*
* Some Krait processors don't indicate support for SDIV and UDIV
* instructions in the ARM instruction set, even though they actually
- * do support them.
+ * do support them. They also don't indicate support for fused multiply
+ * instructions even though they actually do support them.
*/
- __v7_proc __v7_setup, hwcaps = HWCAP_IDIV
+ __v7_proc __v7_setup, hwcaps = HWCAP_IDIV | HWCAP_VFPv4
.size __krait_proc_info, . - __krait_proc_info
/*