From: blogic@openwrt.org (John Crispin)
To: linux-arm-kernel@lists.infradead.org
Subject: [OpenWrt-Devel] ARMv4 (not v4t) marked obsolete in gcc-6
Date: Tue, 15 Mar 2016 18:01:26 +0100 [thread overview]
Message-ID: <56E83FE6.7040506@openwrt.org> (raw)
In-Reply-To: <16727306.4g6uRjH7LT@wuerfel>
On 15/03/2016 16:59, Arnd Bergmann wrote:
> On Friday 11 March 2016 17:56:12 Hans Ulli Kroll wrote:
>> On Fri, 11 Mar 2016, Roman Yeryomin wrote:
>>> On 2016-03-11 08:48, John Crispin wrote:
>>>> On 11/03/2016 06:44, Hans Ulli Kroll wrote:
>
>>> As to the numbers I think that people like me (or others trying out OpenWrt)
>>> usually don't go to the forums, so number of questions there doesn't tell much
>>> (but even there latest messages are from last month, so not dead at all).
>>> Maybe number of downloads from downloads.openwrt.org can tell more but I would
>>> guess that actual users would rather compile it themselves.
>>
>> The support thread on the german board is very long, so most of the
>> questions are answered there. The experienced don't need this, so the
>> numbers *are* wrong.
>>
>> And I'm using two of the NAS boxes for backup and another for kernel work
>>
>>> So I vote for not killing it at least until it's supported by kernel.
>>>
>>
>> ACK !!
>
> Thanks everyone for the input. So if OpenWRT wants to keep the support
> for the Gemini platform, I see two ways forward:
>
> - have a separate toolchain for target/linux/gemini when the other
> platforms upgrade to gcc-7. That means no action needed for now,
> but possibly more work to keep it going in the long run
>
> - make the upstream kernel work with compilers that lack -march=armv4
> support.
>
> I think we want the second one if at all possible, as it also addresses
> most of the other affected platforms (not rpc, which requires -march=armv3).
>
yes please option 2 would be favorable as we try to keep the amount of
toolchains to a minimum.
John
> The patch below might be enough, passing -march=armv4t whenever -march=armv4
> is not supported, and passing --fix-v4bx whenever we build for ARMv4:
>
> diff --git a/arch/arm/Makefile b/arch/arm/Makefile
> index 9fb3fee0e908..3c312d37a83a 100644
> --- a/arch/arm/Makefile
> +++ b/arch/arm/Makefile
> @@ -19,6 +19,11 @@ LDFLAGS_vmlinux += --be8
> LDFLAGS_MODULE += --be8
> endif
>
> +ifeq ($(CONFIG_CPU_32v4),y)
> +LDFLAGS_vmlinux += $(call ld-option,--fix-v4bx)
> +LDFLAGS_MODULE += $(call ld-option,--fix-v4bx)
> +endif
> +
> ifeq ($(CONFIG_ARM_MODULE_PLTS),y)
> LDFLAGS_MODULE += -T $(srctree)/arch/arm/kernel/module.lds
> endif
> @@ -75,7 +80,7 @@ arch-$(CONFIG_CPU_32v6K) =-D__LINUX_ARM_ARCH__=6 $(call cc-option,-march=armv6k,
> endif
> arch-$(CONFIG_CPU_32v5) =-D__LINUX_ARM_ARCH__=5 $(call cc-option,-march=armv5te,-march=armv4t)
> arch-$(CONFIG_CPU_32v4T) =-D__LINUX_ARM_ARCH__=4 -march=armv4t
> -arch-$(CONFIG_CPU_32v4) =-D__LINUX_ARM_ARCH__=4 -march=armv4
> +arch-$(CONFIG_CPU_32v4) =-D__LINUX_ARM_ARCH__=4 $(call cc-option,-march=armv4,-march=armv4t)
> arch-$(CONFIG_CPU_32v3) =-D__LINUX_ARM_ARCH__=3 -march=armv3
>
> # Evaluate arch cc-option calls now
> @@ -93,8 +98,8 @@ tune-$(CONFIG_CPU_ARM922T) =-mtune=arm9tdmi
> tune-$(CONFIG_CPU_ARM925T) =-mtune=arm9tdmi
> tune-$(CONFIG_CPU_ARM926T) =-mtune=arm9tdmi
> tune-$(CONFIG_CPU_FA526) =-mtune=arm9tdmi
> -tune-$(CONFIG_CPU_SA110) =-mtune=strongarm110
> -tune-$(CONFIG_CPU_SA1100) =-mtune=strongarm1100
> +tune-$(CONFIG_CPU_SA110) =$(call cc-option,-mtune=strongarm110)
> +tune-$(CONFIG_CPU_SA1100) =$(call cc-option,-mtune=strongarm1100)
> tune-$(CONFIG_CPU_XSCALE) =$(call cc-option,-mtune=xscale,-mtune=strongarm110) -Wa,-mcpu=xscale
> tune-$(CONFIG_CPU_XSC3) =$(call cc-option,-mtune=xscale,-mtune=strongarm110) -Wa,-mcpu=xscale
> tune-$(CONFIG_CPU_FEROCEON) =$(call cc-option,-mtune=marvell-f,-mtune=xscale)
>
> Does this look reasonable?
>
> Arnd
>
next prev parent reply other threads:[~2016-03-15 17:01 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-10 9:13 ARMv4 (not v4t) marked obsolete in gcc-6 Arnd Bergmann
2016-03-10 9:31 ` Russell King - ARM Linux
2016-03-10 16:59 ` Arnd Bergmann
2016-03-10 17:09 ` Russell King - ARM Linux
2016-03-10 17:59 ` Arnd Bergmann
2016-03-10 9:38 ` Dmitry Eremin-Solenikov
2016-03-10 16:38 ` Arnd Bergmann
2016-03-10 21:49 ` Dmitry Eremin-Solenikov
2016-03-15 15:14 ` Arnd Bergmann
2016-03-10 9:40 ` Baruch Siach
2016-03-10 10:58 ` Robin Murphy
2016-03-10 15:40 ` Dave Martin
2016-03-11 5:44 ` Hans Ulli Kroll
2016-03-11 6:48 ` [OpenWrt-Devel] " John Crispin
2016-03-11 16:09 ` Roman Yeryomin
2016-03-11 16:56 ` Hans Ulli Kroll
2016-03-15 15:59 ` Arnd Bergmann
2016-03-15 17:01 ` John Crispin [this message]
2016-03-15 20:26 ` Ard Biesheuvel
2016-03-15 22:00 ` Arnd Bergmann
2016-03-17 16:18 ` Ramana Radhakrishnan
2016-03-17 19:34 ` Dmitry Eremin-Solenikov
2016-03-18 13:25 ` Ramana Radhakrishnan
2016-03-21 20:50 ` Arnd Bergmann
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56E83FE6.7040506@openwrt.org \
--to=blogic@openwrt.org \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.