From: Thomas Petazzoni via buildroot <buildroot@buildroot.org>
To: "Gaël PORTAY" <gael.portay+rtone@gmail.com>
Cc: buildroot@buildroot.org,
Giulio Benetti <giulio.benetti@benettiengineering.com>,
Romain Naour <romain.naour@gmail.com>
Subject: Re: [Buildroot] [PATCH 1/1] support/scripts/gen-bootlin-toolchains: allows armv8-a CPU to use armv7-a toolchains
Date: Sat, 19 Apr 2025 16:03:00 +0200 [thread overview]
Message-ID: <20250419160300.41c99b25@windsurf> (raw)
In-Reply-To: <20250415112505.1841541-1-gael.portay+rtone@gmail.com>
On Tue, 15 Apr 2025 13:25:05 +0200
Gaël PORTAY <gael.portay+rtone@gmail.com> wrote:
> The ARMV7-A toolchains are capable to compile binaries for ARMv8-A CPU
> in AArch32 execution state.
>
> This adds the BR2_ARM_CPU_ARMV8A option in the 'conditions' to allow
> ARMV8-A CPU such as Cortex-A53 or Cortex-A72 to use ARMV7-A toolchains.
>
> Signed-off-by: Gaël PORTAY <gael.portay+rtone@gmail.com>
Thanks, applied!
> In an attempt to move the Raspberry defconfigs to the Bootlin external
> toolchain (glibc-stable), I figured out that the ARM64 CPUs in 32-bits
> have no Bootlin toolchain available because of a lack for the likewise
> 'conditions': BR2_ARM_CPU_ARMV7A || BR2_ARM_CPU_ARMV8A
>
> I am a little bit concerned about the change propose in this patch as
> the 'conditions' could be used to generate the test if no 'test_options'
> is defined, and that cannot split the following 'conditions' into single
> option pieces:
>
> (BR2_ARM_CPU_ARMV7A && BR2_ARM_EABIHF) || BR2_ARM_CPU_ARMV8A
>
> This is the part of code that would not work if 'test_options' is unset:
>
> if 'test_options' in arches[self.arch]:
> test_options = arches[self.arch]['test_options']
> else:
> test_options = arches[self.arch]['conditions']
> for opt in test_options:
> if opt.startswith("!"):
> f.write(" # %s is not set\n" % opt[1:])
> else:
> f.write(" %s=y\n" % opt)
>
> However, this kind of "complex" 'conditions' with such CPU feature
> options requires to get overriden by the 'test_options', right?
I understand your concern, but I believe you're right that those
complex cases simply _must_ have test_conditions defined. I thought a
bit about this, and didn't see a reasonably simple solution other than
what you have proposed.
Thanks!
Thomas
--
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
next prev parent reply other threads:[~2025-04-19 14:03 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-15 11:25 [Buildroot] [PATCH 1/1] support/scripts/gen-bootlin-toolchains: allows armv8-a CPU to use armv7-a toolchains Gaël PORTAY
2025-04-19 14:03 ` Thomas Petazzoni via buildroot [this message]
2025-05-02 10:35 ` Arnout Vandecappelle via buildroot
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=20250419160300.41c99b25@windsurf \
--to=buildroot@buildroot.org \
--cc=gael.portay+rtone@gmail.com \
--cc=giulio.benetti@benettiengineering.com \
--cc=romain.naour@gmail.com \
--cc=thomas.petazzoni@bootlin.com \
/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.