Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Korsgaard <peter@korsgaard.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 1/4] boot/opensbi: add support for version configuration
Date: Fri, 30 Apr 2021 09:48:56 +0200	[thread overview]
Message-ID: <87a6pg8b6f.fsf@dell.be.48ers.dk> (raw)
In-Reply-To: <20210429074636.724046-2-thomas.petazzoni@bootlin.com> (Thomas Petazzoni's message of "Thu, 29 Apr 2021 09:46:32 +0200")

>>>>> "Thomas" == Thomas Petazzoni <thomas.petazzoni@bootlin.com> writes:

 > OpenSBI contains platform-specific code, so very much like Linux,
 > U-Boot or other bootloaders, using the upstream version of OpenSBI
 > will very often not be sufficient.

 > This commit therefore adds the possibility of specifying a custom
 > version of OpenSBI, either custom from upstream, custom tarball, or
 > custom from Git. Support for other version control systems has not
 > been implemented for now, but could be added later if needed.

 > Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
 > ---
 >  boot/opensbi/Config.in  | 51 +++++++++++++++++++++++++++++++++++++++++
 >  boot/opensbi/opensbi.mk | 19 ++++++++++++++-
 >  2 files changed, 69 insertions(+), 1 deletion(-)

 > diff --git a/boot/opensbi/Config.in b/boot/opensbi/Config.in
 > index b9b0ace8af..83f40f04fa 100644
 > --- a/boot/opensbi/Config.in
 > +++ b/boot/opensbi/Config.in
 > @@ -13,6 +13,57 @@ config BR2_TARGET_OPENSBI
 >  	  https://github.com/riscv/opensbi.git
 
 >  if BR2_TARGET_OPENSBI
 > +choice
 > +	prompt "OpenSBI Version"
 > +	help
 > +	  Select the specific OpenSBI version you want to use
 > +
 > +config BR2_TARGET_OPENSBI_LATEST_VERSION
 > +	bool "0.8"
 > +
 > +config BR2_TARGET_OPENSBI_CUSTOM_VERSION
 > +	bool "Custom version"
 > +	help
 > +	  This option allows to use a specific official versions
 > +
 > +config BR2_TARGET_OPENSBI_CUSTOM_TARBALL
 > +	bool "Custom tarball"
 > +
 > +config BR2_TARGET_OPENSBI_CUSTOM_GIT
 > +	bool "Custom Git repository"
 > +
 > +endchoice
 > +
 > +config BR2_TARGET_OPENSBI_CUSTOM_VERSION_VALUE
 > +	string "OpenSBI version"
 > +	depends on BR2_TARGET_OPENSBI_CUSTOM_VERSION
 > +
 > +config BR2_TARGET_OPENSBI_CUSTOM_TARBALL_LOCATION
 > +	string "URL of custom OpenSBI tarball"
 > +	depends on BR2_TARGET_OPENSBI_CUSTOM_TARBALL
 > +
 > +if BR2_TARGET_OPENSBI_CUSTOM_GIT
 > +
 > +config BR2_TARGET_OPENSBI_CUSTOM_REPO_URL
 > +	string "URL of custom repository"
 > +
 > +config BR2_TARGET_OPENSBI_CUSTOM_REPO_VERSION
 > +	string "Custom repository version"
 > +	help
 > +	  Revision to use in the typical format used by Git. E.G. a
 > +	  sha id, a tag, branch, ..
 > +
 > +endif
 > +
 > +config BR2_TARGET_OPENSBI_VERSION
 > +	string
 > +	default "0.8"	if BR2_TARGET_OPENSBI_LATEST_VERSION
 > +	default BR2_TARGET_OPENSBI_CUSTOM_VERSION_VALUE \
 > +		if BR2_TARGET_OPENSBI_CUSTOM_VERSION
 > +	default "custom"	if BR2_TARGET_OPENSBI_CUSTOM_TARBALL
 > +	default BR2_TARGET_OPENSBI_CUSTOM_REPO_VERSION \
 > +		if BR2_TARGET_OPENSBI_CUSTOM_GIT
 > +
 >  config BR2_TARGET_OPENSBI_PLAT
 >  	string "OpenSBI Platform"
 >  	default ""
 > diff --git a/boot/opensbi/opensbi.mk b/boot/opensbi/opensbi.mk
 > index 60b87c268d..250a6078af 100644
 > --- a/boot/opensbi/opensbi.mk
 > +++ b/boot/opensbi/opensbi.mk
 > @@ -4,13 +4,30 @@
 >  #
 >  ################################################################################
 
 > -OPENSBI_VERSION = 0.8
 > +OPENSBI_VERSION = $(call qstrip,$(BR2_TARGET_OPENSBI_VERSION))
 > +
 > +ifeq ($(OPENSBI_VERSION),custom)
 > +# Handle custom OpenSBI tarballs as specified by the configuration
 > +OPENSBI_TARBALL = $(call qstrip,$(BR2_TARGET_OPENSBI_CUSTOM_TARBALL_LOCATION))
 > +OPENSBI_SITE = $(patsubst %/,%,$(dir $(OPENSBI_TARBALL)))
 > +OPENSBI_SOURCE = $(notdir $(OPENSBI_TARBALL))
 > +else ifeq ($(BR2_TARGET_OPENSBI_CUSTOM_GIT),y)
 > +OPENSBI_SITE = $(call qstrip,$(BR2_TARGET_OPENSBI_CUSTOM_REPO_URL))
 > +OPENSBI_SITE_METHOD = git
 > +else
 > +# Handle official OpenSBI versions
 >  OPENSBI_SITE = $(call github,riscv,opensbi,v$(OPENSBI_VERSION))
 > +endif
 > +
 >  OPENSBI_LICENSE = BSD-2-Clause
 >  OPENSBI_LICENSE_FILES = COPYING.BSD

Maybe this should be inside the _LATEST_VERSION conditional in case the
license file ever changes, like we have done for the linux kernel?

But OK, that can be done later. Committed, thanks.

-- 
Bye, Peter Korsgaard

  parent reply	other threads:[~2021-04-30  7:48 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-29  7:46 [Buildroot] [PATCH 0/4] Support for the Beagle-V platform Thomas Petazzoni
2021-04-29  7:46 ` [Buildroot] [PATCH 1/4] boot/opensbi: add support for version configuration Thomas Petazzoni
2021-04-29 12:45   ` Bin Meng
2021-04-30  7:48   ` Peter Korsgaard [this message]
2021-04-30  8:51   ` Drew Fustini
2021-04-30  8:56     ` Thomas Petazzoni
2021-04-29  7:46 ` [Buildroot] [PATCH 2/4] boot/opensbi: allow using U-Boot as a payload Thomas Petazzoni
2021-04-29 12:45   ` Bin Meng
2021-04-30  7:49   ` Peter Korsgaard
2021-04-29  7:46 ` [Buildroot] [PATCH 3/4] boot/opensbi: add options to enable/disable image installation Thomas Petazzoni
2021-04-29 12:39   ` Bin Meng
2021-04-29  7:46 ` [Buildroot] [PATCH 4/4] configs/beaglev_defconfig: new defconfig Thomas Petazzoni
2021-04-29 12:44   ` Bin Meng
2021-05-01 14:37   ` Frank Hunleth
2021-04-29 12:39 ` [Buildroot] [PATCH 0/4] Support for the Beagle-V platform Erico Nunes
2021-04-29 13:01   ` Thomas Petazzoni
2021-04-29 13:26     ` Erico Nunes
2021-04-29 13:48       ` Thomas Petazzoni
2021-04-29 13:52         ` Erico Nunes
2021-04-29 14:26           ` Thomas Petazzoni
2021-04-29 14:55             ` Erico Nunes
2021-04-30  0:35   ` Drew Fustini
2021-04-30  8:27 ` Drew Fustini

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=87a6pg8b6f.fsf@dell.be.48ers.dk \
    --to=peter@korsgaard.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox