Loading arch/arm/include/asm/hwcap.h +1 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ #define HWCAP_IWMMXT 512 #define HWCAP_CRUNCH 1024 #define HWCAP_THUMBEE 2048 #define HWCAP_NEON 4096 #if defined(__KERNEL__) && !defined(__ASSEMBLY__) /* Loading arch/arm/kernel/setup.c +1 −0 Original line number Diff line number Diff line Loading @@ -773,6 +773,7 @@ static const char *hwcap_str[] = { "iwmmxt", "crunch", "thumbee", "neon", NULL }; Loading arch/arm/vfp/vfpmodule.c +9 −0 Original line number Diff line number Diff line Loading @@ -371,6 +371,15 @@ static int __init vfp_init(void) * in place; report VFP support to userspace. */ elf_hwcap |= HWCAP_VFP; #ifdef CONFIG_NEON /* * Check for the presence of the Advanced SIMD * load/store instructions, integer and single * precision floating point operations. */ if ((fmrx(MVFR1) & 0x000fff00) == 0x00011100) elf_hwcap |= HWCAP_NEON; #endif } return 0; } Loading Loading
arch/arm/include/asm/hwcap.h +1 −0 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ #define HWCAP_IWMMXT 512 #define HWCAP_CRUNCH 1024 #define HWCAP_THUMBEE 2048 #define HWCAP_NEON 4096 #if defined(__KERNEL__) && !defined(__ASSEMBLY__) /* Loading
arch/arm/kernel/setup.c +1 −0 Original line number Diff line number Diff line Loading @@ -773,6 +773,7 @@ static const char *hwcap_str[] = { "iwmmxt", "crunch", "thumbee", "neon", NULL }; Loading
arch/arm/vfp/vfpmodule.c +9 −0 Original line number Diff line number Diff line Loading @@ -371,6 +371,15 @@ static int __init vfp_init(void) * in place; report VFP support to userspace. */ elf_hwcap |= HWCAP_VFP; #ifdef CONFIG_NEON /* * Check for the presence of the Advanced SIMD * load/store instructions, integer and single * precision floating point operations. */ if ((fmrx(MVFR1) & 0x000fff00) == 0x00011100) elf_hwcap |= HWCAP_NEON; #endif } return 0; } Loading