[U-Boot] [PATCH v2] ARM: move -march=* and -mtune= options to arch/arm/Makefile

Stephen Warren swarren at wwwdotorg.org
Sat Apr 11 05:49:27 CEST 2015


On 03/27/2015 11:06 AM, Albert ARIBAUD wrote:
> On Fri, 27 Feb 2015 02:40:33 +0900, Masahiro Yamada <yamada.m at jp.panasonic.com> wrote:
>> My main motivations for this commit are:
>>
>> [1] Follow the arch/arm/Makefile style of Linux Kernel
>>
>> [2] Maintain compiler options systematically
>>   Currently, we give -march=* and -mtune=* options inconsistently:
>>   Only some of the CPUs pass -march=* and -mtune=* options.
>>   By collecting such options into the single place arch/arm/Makefile
>>   we can tell which options are missing at a glance.
>>
>> [3] Prepare for deprecating arch/*/cpu/*/config.mk
>>
>> Note:
>>   This commit just moves the compiler options so as not to change
>>   the behavior at all.  It does not care about the correctness of
>>   the given options.  Fox example, "-march=armv5te" might be better
>>   than "-march=armv4" for ARM946EJS, but it is beyond the scope this
>>   commit.  Also, filling the missing -march=* and -tune=* is left
>>   to follow-up patches.
...
> Applied to u-boot-arm/master, thanks!

This patch breaks Tegra (at least Seaboard, and I'd guess all Tegra
boards). Reverting it solves the problem.

It causes the SPL to be build for ARMv7 even though it should be built
for an earlier architecture. I added a $(warning) to arch/arm/Makefile,
and it prints:

arch/arm/Makefile:37: SPL_BUILD  FLAGS  -D__ARM__ -marm
-mno-thumb-interwork  -mabi=aapcs-linux  -mword-relocations
-mno-unaligned-access  -ffunction-sections -fdata-sections -fno-common
-ffixed-r9  -msoft-float  -pipe  -march=armv7-a

arch/arm/Makefile:37: SPL_BUILD y FLAGS  -D__ARM__ -marm
-mno-thumb-interwork  -mabi=aapcs-linux  -ffunction-sections
-fdata-sections -fno-common -ffixed-r9  -msoft-float  -pipe  -march=armv7-a

Note the second line says ARMv7, even though CONFIG_SPL_BUILD is set, so
it shouldn't.


More information about the U-Boot mailing list