All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
To: buildroot@busybox.net
Subject: [Buildroot] Buildroot for Texas Instruments AM65X - add 2nd toolchain?
Date: Thu, 10 Oct 2019 21:28:08 +0200	[thread overview]
Message-ID: <20191010212808.7cc37b56@windsurf> (raw)
In-Reply-To: <CAMQcK5+xHvWkx=_DBTReZC49wU=KW1XQesdRiHpEE2E6_iC1EA@mail.gmail.com>

Hello Ryan,

On Thu, 10 Oct 2019 09:32:19 -0500
Ryan Barnett <ryan.barnett@rockwellcollins.com> wrote:

> I'm not sure if anyone has used the AM65X here but the ideal solution
> when using two compiles is to maintain two defconfigs. One for the
> 32-bit Cortex-R5 TI bootloader followed by one that builds everything
> for AArch64.
> 
> There is an issue with compiling using an ARM Cortex-R5 toolchain
> however. Buildroot is setup to build an Embedded Linux System, it only
> supports ARM cores which can run the Linux kernel which the Cortex-R5
> is not. This means a bare-metal toolchain (no C library) must be used
> which buildroot doesn't support. Thus if you want to build the TI
> bootloader package in buildroot using the ARM R5 bare-metal toolchain,
> you will not be able to take advantage of any of the toolchain
> infrastructure.
> 
> With the current state of buildroot, this leads to needing to add your
> own host package for the bare metal toolchain in br2-external which
> would install the toolchain into the host directory. Then you will
> need to add package for the TI bootloader which depend on this host
> toolchain package. The TI bootloader package would take advantage of
> the generic package infrastructure and need to setup and configure the
> TI bootloader source to point to the bare-metal compiler which was
> placed in the host folder.

As I pointed out in my reply, I don't think in this situation you need
two defconfigs, and two separate Buildroot builds.

The bare-metal toolchain can just be a regular Buildroot host package,
and used to build the bare-metal Cortex-R5 code.

See the patch series that I pointed in my reply, which did exactly this
to build the firmware running on a Cortex-M3 co-processor, for a Linux
system running on an Cortex-A53.

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

  reply	other threads:[~2019-10-10 19:28 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-10 13:56 [Buildroot] Buildroot for Texas Instruments AM65X - add 2nd toolchain? Whitney, Scott
2019-10-10 14:32 ` Ryan Barnett
2019-10-10 19:28   ` Thomas Petazzoni [this message]
2019-10-10 19:41     ` Ryan Barnett
2019-10-10 14:33 ` Thomas Petazzoni
2019-10-10 15:56   ` Whitney, Scott
2019-10-10 16:54     ` Christian Stewart

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=20191010212808.7cc37b56@windsurf \
    --to=thomas.petazzoni@bootlin.com \
    --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.