[PATCH 62/62] ARM: tegra: make debug_ll code build for ARMv6
From: arnd@arndb.de (Arnd Bergmann)
Date: 2014-03-20 10:50:16
Also in:
linux-tegra
On Wednesday 19 March 2014, Stephen Warren wrote:
On 03/19/2014 01:51 PM, Arnd Bergmann wrote:quoted
On Wednesday 19 March 2014 13:40:06 Stephen Warren wrote:quoted
Hmmm. This code is guaranteed to only execute on Tegra (well, perhaps someone can turn on the wrong debug option and run it on non-Tegra, but then it's guaranteed not to work since the HW it touches doesn't exist). As such, the code ought to be able to use ARMv7 instructions. As a fix for similar issues in assembly code in arch/arm/mach-tegra/*.S, Makefile there does: asflags-y += -march=armv7-a (I think you added that? Yes, in 408e713545ca "ARM: tegra: build assembly files with -march=armv7-a") Shouldn't we use the same fix in this case too?That was my first idea, but I couldn't come up with a nice way to do this for arch/arm/kernel/debug.S, which #includes the specific implementation. I'd rather not put lots of per-platform hacks into arch/arm/kernel/Makefile.Oh, I guess the fact it's include makes it a bit more painful. You could deal with it in Kconfig reasonably easily by having each of DEBUG_*_UART select a config option indicating how to compile code that includes DEBUG_LL_INCLUDE, and then have the Makefiles set up asflags based on those. Still, that would be a lot of work and this patch is simpler. Tested-by: Stephen Warren <redacted> Acked-by: Stephen Warren <redacted>
Ok, thanks for testing! I'm always cautious aobut my own assembly skills, so I'm glad this worked. Arnd