From 50479d38296ef9ba178a3d6227f02dfd4eb9b335 Mon Sep 17 00:00:00 2001 From: Will Deacon Date: Wed, 8 Jun 2011 11:42:43 +0100 Subject: [PATCH] --- yaml --- r: 258310 b: refs/heads/master c: 18b9dc130c33de2d1fd46bd668e67d0e1a544b16 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/arm/vfp/vfpmodule.c | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index ff6a9ba811e5..a01597a37478 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 254cdf8ec39653d19cce71b6622f38a6b62ac3a8 +refs/heads/master: 18b9dc130c33de2d1fd46bd668e67d0e1a544b16 diff --git a/trunk/arch/arm/vfp/vfpmodule.c b/trunk/arch/arm/vfp/vfpmodule.c index f25e7ec89416..650d90be0f9f 100644 --- a/trunk/arch/arm/vfp/vfpmodule.c +++ b/trunk/arch/arm/vfp/vfpmodule.c @@ -582,7 +582,6 @@ static int __init vfp_init(void) elf_hwcap |= HWCAP_VFPv3D16; } #endif -#ifdef CONFIG_NEON /* * Check for the presence of the Advanced SIMD * load/store instructions, integer and single @@ -590,10 +589,13 @@ static int __init vfp_init(void) * for NEON if the hardware has the MVFR registers. */ if ((read_cpuid_id() & 0x000f0000) == 0x000f0000) { +#ifdef CONFIG_NEON if ((fmrx(MVFR1) & 0x000fff00) == 0x00011100) elf_hwcap |= HWCAP_NEON; - } #endif + if ((fmrx(MVFR1) & 0xf0000000) == 0x10000000) + elf_hwcap |= HWCAP_VFPv4; + } } return 0; }