U-Boot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
To: Simon Glass <sjg@chromium.org>
Cc: Tom Rini <trini@konsulko.com>,
	U-Boot Mailing List <u-boot@lists.denx.de>
Subject: Re: [PATCH 8/9] buildman: Propose a format for extra boards
Date: Sat, 9 Nov 2024 23:55:21 +0100	[thread overview]
Message-ID: <a6cbb2d2-d346-45be-9edd-22b1d4901b88@canonical.com> (raw)
In-Reply-To: <20241108152350.3686274-9-sjg@chromium.org>

On 08.11.24 16:23, Simon Glass wrote:
> It has become more common to use config fragments to extend or adjust
> the functionality of boards in U-Boot.
> 
> Propose a format for how to deal with this. It is not implemented as
> yet.
> 
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
> 
>   tools/buildman/buildman.rst | 39 +++++++++++++++++++++++++++++++++++++
>   1 file changed, 39 insertions(+)
> 
> diff --git a/tools/buildman/buildman.rst b/tools/buildman/buildman.rst
> index 924564b5700..48705d0e49e 100644
> --- a/tools/buildman/buildman.rst
> +++ b/tools/buildman/buildman.rst
> @@ -1148,6 +1148,45 @@ like::
>   This is partly because there is no way for Buildman to know which fragments are
>   valid on which boards.
>   
> +Specifying the build matrix with fragments
> +------------------------------------------
> +
> +In order to build boards which can use fragments, Buildman needs to know which
> +fragments are valid with which boards. The following scheme is proposed, but not
> +currently implemented.
> +
> +In ``defconfig/``, files with a '.buildman' suffix are used to effectively
> +create new boards for Buildman to build. All such files are processed, but it
> +might be best to put all the information in a single file for now, e.g.
> +``extended.buildman``.
> +
> +The syntax consists of a number of sections, each introduced by a name. For each
> +section the fragment file is named (without the implied ``.config`` suffix),
> +then the targets which can accept that fragment are specified, either by their
> +board name, with wildcards, or a set of ``CONFIG`` options to check. All
> +``CONFIG`` options must match for a board to be included in the set. To specify
> +multiple fragments to be included, add them in the order which they should be
> +applied, one per line.
> +
> +For example::
> +
> +   # Build RISC-V QEMU builds with ACPI
> +   name: ACPI with supporting boards
> +   fragment: acpi
> +   targets:
> +     qemu_riscv*
> +
> +   # Build Android variant of 'k3' boards, with DFU
> +   name USB DFU for am62x boards
> +   fragment: am62x_r5_usbdfu
> +   fragment: am62x_a53_android
> +   targets:
> +     CONFIG_SYS_SOC="k3"

Thank you for looking into this. I don't think that we will have to 
build every board with each fragment. But for every fragment there 
should be at least one build.

qemu-riscv64_smode_defconfig + acpi.config and qemu_arm_defconfig + 
acpi.config would be enough for acpi.config. x86 anyway uses ACPI.

Best regards

Heinrich

> +
> +Buildman normally ignores these files. To request that Buildman process these
> +extended new 'boards', use the ``-X / --extend`` option. Note that this may
> +significantly increase the number of boards which Buildman builds.
> +
>   Building with clang
>   -------------------
>   


  reply	other threads:[~2024-11-09 22:55 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-08 15:23 [PATCH 0/9] buildman: Add initial support for config fragments Simon Glass
2024-11-08 15:23 ` [PATCH 1/9] buildman: Add a lower-level test for KconfigScanner Simon Glass
2024-11-08 15:23 ` [PATCH 2/9] buildman: Set up the tout library Simon Glass
2024-11-08 15:23 ` [PATCH 3/9] buildman: Support #include files in defconfigs Simon Glass
2024-11-13  2:40   ` Tom Rini
2024-11-13 14:39     ` Simon Glass
2024-11-13 21:53       ` Tom Rini
2024-11-15 14:26         ` Simon Glass
2024-11-15 16:12           ` Tom Rini
2024-11-08 15:23 ` [PATCH 4/9] buildman: Correct the indentation in the setting-up section Simon Glass
2024-11-08 15:23 ` [PATCH 5/9] buildman: Document the toolchain-prefix section Simon Glass
2024-11-08 15:23 ` [PATCH 6/9] buildman: Correct logic for adding a toolchain Simon Glass
2024-11-08 15:23 ` [PATCH 7/9] buildman: Support a tilde to represent the home directory Simon Glass
2024-11-08 15:23 ` [PATCH 8/9] buildman: Propose a format for extra boards Simon Glass
2024-11-09 22:55   ` Heinrich Schuchardt [this message]
2024-11-13  2:40   ` Tom Rini
2024-11-13 16:03     ` Simon Glass
2024-11-13 22:20       ` Tom Rini
2024-11-15 13:37         ` Simon Glass
2024-11-15 14:44           ` Tom Rini
2024-11-17 19:48             ` Simon Glass
2024-11-17 20:52               ` Tom Rini
2024-11-08 15:23 ` [PATCH 9/9] RFC: Show building with #include in defconfig Simon Glass
2024-11-19 22:12 ` (subset) [PATCH 0/9] buildman: Add initial support for config fragments Tom Rini

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=a6cbb2d2-d346-45be-9edd-22b1d4901b88@canonical.com \
    --to=heinrich.schuchardt@canonical.com \
    --cc=sjg@chromium.org \
    --cc=trini@konsulko.com \
    --cc=u-boot@lists.denx.de \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox