[Buildroot] [PATCH 1/2] uboot: add support for bundling OpenSBI FW_DYNAMIC into U-Boot

Alistair Francis alistair23 at gmail.com
Fri May 8 19:41:15 UTC 2020


On Wed, May 6, 2020 at 3:09 AM Jagan Teki <jagan at amarulasolutions.com> wrote:
>
> Some RISC-V platforms (such as SiFive FU540) have a boot process
> where U-Boot encapsulates the FW_DYNAMIC part of the ARM trusted
> firmware. For such platforms, we need to build OpenSBI before U-Boot,

This shouldn't be ARM trusted firmware.

> and pass a OPENSBI variable pointing to OpenSBI bl31.bin to the
> U-Boot build process.

Also no bl31.bin for OpenSBI.

Alistair

>
> This commit introduces a BR2_TARGET_UBOOT_NEEDS_OPENSBI_FW_DYNAMIC
> variable to achieve this.
>
> Signed-off-by: Jagan Teki <jagan at amarulasolutions.com>
> ---
>  boot/uboot/Config.in | 15 +++++++++++++++
>  boot/uboot/uboot.mk  |  5 +++++
>  2 files changed, 20 insertions(+)
>
> diff --git a/boot/uboot/Config.in b/boot/uboot/Config.in
> index ffc441d670..670df42c4e 100644
> --- a/boot/uboot/Config.in
> +++ b/boot/uboot/Config.in
> @@ -202,6 +202,21 @@ config BR2_TARGET_UBOOT_NEEDS_ATF_BL31_ELF
>
>  endchoice
>
> +config BR2_TARGET_UBOOT_NEEDS_OPENSBI_FW_DYNAMIC
> +       bool "U-Boot needs OpenSBI fw_dynamic"
> +       depends on BR2_TARGET_OPENSBI
> +       help
> +         A fw_dynamic firmware is particularly useful when the
> +         booting stage executed prior to OpenSBI firmware is
> +         capable of loading both the OpenSBI firmware and the
> +         booting stage binary to follow OpenSBI firmware.
> +
> +         Some RISC-V platforms (such as SiFive FU540) encapsulate
> +         the fw_dynamic part of OpenSBI inside U-Boot. This option
> +         makes sure OpenSBI gets built prior to U-Boot, and that
> +         the OPENSBI variable pointing to OpenSBI's fw_dynamic
> +         binary, is passed during the Buildroot build.
> +
>  menu "U-Boot binary format"
>
>  config BR2_TARGET_UBOOT_FORMAT_AIS
> diff --git a/boot/uboot/uboot.mk b/boot/uboot/uboot.mk
> index 2bfa50779b..f339186b65 100644
> --- a/boot/uboot/uboot.mk
> +++ b/boot/uboot/uboot.mk
> @@ -155,6 +155,11 @@ UBOOT_MAKE_OPTS += BL31=$(BINARIES_DIR)/bl31.bin
>  endif
>  endif
>
> +ifeq ($(BR2_TARGET_UBOOT_NEEDS_OPENSBI_FW_DYNAMIC),y)
> +UBOOT_DEPENDENCIES += opensbi
> +UBOOT_MAKE_OPTS += OPENSBI=$(BINARIES_DIR)/fw_dynamic.bin
> +endif
> +
>  ifeq ($(BR2_TARGET_UBOOT_NEEDS_DTC),y)
>  UBOOT_DEPENDENCIES += host-dtc
>  endif
> --
> 2.17.1
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot


More information about the buildroot mailing list