Skip to content

Commit

Permalink
ARM: mxc: turn off HWCAP_NEON for older versions of imx51 silicon
Browse files Browse the repository at this point in the history
Versions of silicon older than TO3 have broken NEON implementation. Turn off
NEON in such cases.

Signed-off-by: Amit Kucheria <amit.kucheria@linaro.org>
Tested-by: Dave Martin <dave.martin@linaro.org>
Tested-by: Jason Hui <jason.hui@linaro.org>
Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org>
  • Loading branch information
Amit Kucheria authored and Nicolas Pitre committed Oct 2, 2010
1 parent c62d0f2 commit 33d7c5c
Showing 1 changed file with 19 additions and 0 deletions.
19 changes: 19 additions & 0 deletions arch/arm/mach-mx5/cpu.c
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,25 @@ int mx51_revision(void)
}
EXPORT_SYMBOL(mx51_revision);

#ifdef CONFIG_NEON

/*
* All versions of the silicon before Rev. 3 have broken NEON implementations.
* Dependent on link order - so the assumption is that vfp_init is called
* before us.
*/
static int __init mx51_neon_fixup(void)
{
if (mx51_revision() < MX51_CHIP_REV_3_0 && (elf_hwcap & HWCAP_NEON)) {
elf_hwcap &= ~HWCAP_NEON;
pr_info("Turning off NEON support, detected broken NEON implementation\n");
}
return 0;
}

late_initcall(mx51_neon_fixup);
#endif

static int __init post_cpu_init(void)
{
unsigned int reg;
Expand Down

0 comments on commit 33d7c5c

Please sign in to comment.