Merge commit 'v3.0.58' into android-3.0
[firefly-linux-kernel-4.4.55.git] / arch / arm / vfp / vfpmodule.c
index 78829fab70ece87300c91ac3b1041b45e9a263a0..192e9dd4c39b139365777efb88a1d86497bcb93d 100644 (file)
@@ -587,11 +587,14 @@ static int __init vfp_init(void)
                        elf_hwcap |= HWCAP_VFPv3;
 
                        /*
-                        * Check for VFPv3 D16. CPUs in this configuration
-                        * only have 16 x 64bit registers.
+                        * Check for VFPv3 D16 and VFPv4 D16.  CPUs in
+                        * this configuration only have 16 x 64bit
+                        * registers.
                         */
                        if (((fmrx(MVFR0) & MVFR0_A_SIMD_MASK)) == 1)
-                               elf_hwcap |= HWCAP_VFPv3D16;
+                               elf_hwcap |= HWCAP_VFPv3D16; /* also v4-D16 */
+                       else
+                               elf_hwcap |= HWCAP_VFPD32;
                }
 #endif
 #ifdef CONFIG_NEON