From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 3/4 v2] arch/arm: add big.LITTLE cpu variants
Date: Sat, 8 Jul 2017 18:51:43 +0200 [thread overview]
Message-ID: <20170708165143.GE3867@scaer> (raw)
In-Reply-To: <72f8e309-5735-0cb5-9ca0-65c2a43892df@mind.be>
Arnout, All,
On 2017-07-08 18:34 +0200, Arnout Vandecappelle spake thusly:
> On 08-07-17 16:08, Yann E. MORIN wrote:
> > The big.LITTLE configurations can be optimised for by gcc, and a few
> > users wonder what they should choose when they have such CPUs.
> >
> > Add new entries for those big.LITTLE configurations.
> >
> > Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> > Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> > Cc: Thomas De Schampheleire <patrickdepinguin@gmail.com>
> > Cc: Baruch Siach <baruch@tkos.co.il>
> [snip]
> > +config BR2_cortex_a15_a7
> > + bool "cortex-A15/A7 big.LITTLE"
> > + select BR2_ARM_CPU_HAS_ARM
> > + select BR2_ARM_CPU_HAS_NEON
> > + select BR2_ARM_CPU_HAS_VFPV4
> > + select BR2_ARM_CPU_HAS_THUMB2
> > + select BR2_ARM_CPU_ARMV7A
> > + select BR2_ARCH_HAS_MMU_OPTIONAL
>
> Not for this patch, but: is this actually correct? Looking at the kernel's
> arch/arm/Kconfig, I see that all the platforms that can be selected when MMU is
> not selected are <= ARMv6. Well, I'm not entirely sure, it's a bit difficult to
> map stuff like CPU_XSC3 on an ARM version.
I just duplicated for a15-a7 what we had for a15 and a7, which
fortunately was exactly identical. So a15-a7 can be noMMU in Buildroot.
Does that make sense? Probably not, but this should be fixed by another
patch, then.
> > + depends on !BR2_ARCH_IS_64
> [snip]
> > diff --git a/package/gcc/Config.in.host b/package/gcc/Config.in.host
> > index 5dcaa03ff0..c072b78ae5 100644
> > --- a/package/gcc/Config.in.host
> > +++ b/package/gcc/Config.in.host
> > @@ -25,7 +25,8 @@ config BR2_GCC_VERSION_4_9_X
> > # Broken or unsupported architectures
> > depends on !BR2_arc && !BR2_bfin && !BR2_or1k
> > # Broken or unsupported ARM cores
> > - depends on !BR2_cortex_a17 && !BR2_cortex_a72
> > + depends on !BR2_cortex_a17 && !BR2_cortex_a17_a7
> > + depends on !BR2_cortex_a72 && !BR2_cortex_a72_a53
> > # Unsupported MIPS cores
> > depends on !BR2_mips_interaptiv
> > # Unsupported for MIPS R5
> > @@ -45,6 +46,8 @@ config BR2_GCC_VERSION_5_X
> > bool "gcc 5.x"
> > # Broken or unsupported architectures
> > depends on !BR2_arc && !BR2_bfin && !BR2_or1k
> > + # Broken or unsupported ARM cores
> > + depends on !BR2_cortex_a57_a53 && !BR2_cortex_a72_a53
>
> According to [1], a72.a53 was added in GCC 5. And a57.a53 was already added in
> GCC 4.9 - is it broken in GCC 5?
I indeed tried various versions of gcc, starting with gcc-4.9.
The depednencies I added here are based on brokenness of versions
earlier than that.
> > # musl ppc64 unsupported
> > depends on !(BR2_TOOLCHAIN_USES_MUSL && (BR2_powerpc64 || BR2_powerpc64le))
> > # Unsupported MIPS cores
> > diff --git a/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in b/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in
> > index 2fbb218ecc..66a032e9ac 100644
> > --- a/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in
> > +++ b/toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in
> > @@ -1,6 +1,8 @@
> > config BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_AARCH64
> > bool "CodeSourcery AArch64 2014.11"
> > depends on BR2_aarch64
> > + # a57/a53 and a72/a53 appeared in gcc-6 or were broken before
>
> Ah, here you mention it. Better raise that to the commit message. Do you also
> have a reference for it?
No, except that gcc did not build: the brokenness manifested itself with
gcc's configure script refusing the big-LITTLE variants.
Regards,
Yann E. MORIN.
> Regards,
> Arnout
>
>
> > + depends on !BR2_cortex_a57_a53 && !BR2_cortex_a72_a53
> [snip]
>
> [1] https://gcc.gnu.org/gcc-5/changes.html
>
> --
> Arnout Vandecappelle arnout at mind be
> Senior Embedded Software Architect +32-16-286500
> Essensium/Mind http://www.mind.be
> G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
> GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
next prev parent reply other threads:[~2017-07-08 16:51 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-07-08 14:08 [Buildroot] [PATCH 0/4 v2] arch/arm: introduce big.LITTLE configurations Yann E. MORIN
2017-07-08 14:08 ` [Buildroot] [PATCH 1/4 v2] arch/arm: fix -mcpu default values for AArch64 Yann E. MORIN
2017-07-08 15:33 ` Arnout Vandecappelle
2017-07-08 15:42 ` Yann E. MORIN
2017-07-19 20:16 ` Peter Korsgaard
2017-07-08 14:08 ` [Buildroot] [PATCH 2/4 v2] package/kvm-unit-tests: introduce _ARCH_SUPPORTS Yann E. MORIN
2017-07-08 15:41 ` Arnout Vandecappelle
2017-07-08 16:30 ` Yann E. MORIN
2017-07-09 16:03 ` Thomas Petazzoni
2017-07-09 16:16 ` Yann E. MORIN
2017-07-08 14:08 ` [Buildroot] [PATCH 3/4 v2] arch/arm: add big.LITTLE cpu variants Yann E. MORIN
2017-07-08 16:34 ` Arnout Vandecappelle
2017-07-08 16:51 ` Yann E. MORIN [this message]
2017-07-08 14:08 ` [Buildroot] [PATCH 4/4 v2] package/kvm-unit-test: available for big.LITTLE arm cores too Yann E. MORIN
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=20170708165143.GE3867@scaer \
--to=yann.morin.1998@free.fr \
--cc=buildroot@busybox.net \
/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.