Subject: [PATCH 62/62] ARM: tegra: make debug_ll code build for ARMv6

From: [email-masked] (Stephen Warren)
Date: Wed, 19 Mar 2014 14:12:08 -0600

On 03/19/2014 01:51 PM, Arnd Bergmann wrote:
> On Wednesday 19 March 2014 13:40:06 Stephen Warren wrote:
>> 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 <[email-masked]>
Acked-by: Stephen Warren <[email-masked]>