summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCatalin Marinas <catalin.marinas@arm.com>2006-04-10 20:32:35 (GMT)
committerRussell King <rmk+kernel@arm.linux.org.uk>2006-04-10 20:32:35 (GMT)
commitadeff42236aec0601ec979d1a41cd6d9cf5a8c05 (patch)
tree52691b790e036de0a4f311f6ecef84f66a6796ae
parent7359036d5cdb86d14cfeb06d0e5a1d68f85cf8b7 (diff)
downloadlinux-fsl-qoriq-adeff42236aec0601ec979d1a41cd6d9cf5a8c05.tar.xz
[ARM] 3470/1: Clear the HWCAP bits for the disabled kernel features
Patch from Catalin Marinas Glibc interprets the HWCAP bits and decides on what features to use. However, even if the features are present in the hardware, they are not always supported by the kernel and hence the corresponding bits have to be cleared from the elf_hwcap variable. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r--arch/arm/kernel/setup.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm/kernel/setup.c b/arch/arm/kernel/setup.c
index 4375284..8cff73e 100644
--- a/arch/arm/kernel/setup.c
+++ b/arch/arm/kernel/setup.c
@@ -322,6 +322,12 @@ static void __init setup_processor(void)
sprintf(system_utsname.machine, "%s%c", list->arch_name, ENDIANNESS);
sprintf(elf_platform, "%s%c", list->elf_name, ENDIANNESS);
elf_hwcap = list->elf_hwcap;
+#ifndef CONFIG_ARM_THUMB
+ elf_hwcap &= ~HWCAP_THUMB;
+#endif
+#ifndef CONFIG_VFP
+ elf_hwcap &= ~HWCAP_VFP;
+#endif
cpu_proc_init();
}