From: Andrew Davis <afd@ti.com>
To: Roger Quadros <rogerq@kernel.org>, <sjg@chromium.org>,
<vigneshr@ti.com>, <nm@ti.com>
Cc: <trini@konsulko.com>, <praneeth@ti.com>, <u-boot@lists.denx.de>
Subject: Re: [u-boot PATCH 3/3] k3-am642-evm-u-boot: Use binman to generate u-boot.img and tispl.bin
Date: Tue, 24 May 2022 17:03:22 -0500 [thread overview]
Message-ID: <3dec7c74-e486-79da-e4e7-cad6205471a5@ti.com> (raw)
In-Reply-To: <20220509072936.12899-4-rogerq@kernel.org>
On 5/9/22 2:29 AM, Roger Quadros wrote:
> Introduce k3-am642-evm-binman.dtsi to provide binman configuration.
>
> R5 build is still not converted to use binman so restrict binman.dtsi
> to A53 builds only.
>
> This patch also take care of building Secure (HS) images using
> binman instead of tools/k3_fit_atf.sh if CONFIG_BINMAN is set.
>
> Signed-off-by: Roger Quadros <rogerq@kernel.org>
> ---
> arch/arm/dts/k3-am642-evm-binman.dtsi | 230 ++++++++++++++++++++++++++
> arch/arm/dts/k3-am642-evm-u-boot.dtsi | 3 +
> arch/arm/mach-k3/Kconfig | 1 +
> arch/arm/mach-k3/config.mk | 7 +
> 4 files changed, 241 insertions(+)
> create mode 100644 arch/arm/dts/k3-am642-evm-binman.dtsi
>
> diff --git a/arch/arm/dts/k3-am642-evm-binman.dtsi b/arch/arm/dts/k3-am642-evm-binman.dtsi
> new file mode 100644
> index 0000000000..9e85ef41b0
> --- /dev/null
> +++ b/arch/arm/dts/k3-am642-evm-binman.dtsi
> @@ -0,0 +1,230 @@
> +// SPDX-License-Identifier: GPL-2.0
> +/*
> + * Copyright (C) 2021 Texas Instruments Incorporated - https://www.ti.com/
> + */
> +
> +/ {
> + binman: binman {
> + multiple-images;
> + };
> +};
> +
> +#ifdef CONFIG_TARGET_AM642_A53_EVM
> +
> +#ifdef CONFIG_TI_SECURE_DEVICE
> +#define TISPL "tispl.bin_HS"
> +#define UBOOT_IMG "u-boot.img_HS"
> +#else
> +#define TISPL "tispl.bin"
> +#define UBOOT_IMG "u-boot.img"
> +#endif
> +
> +#define SPL_NODTB "spl/u-boot-spl-nodtb.bin"
> +#define SPL_AM642_EVM_DTB "spl/dts/k3-am642-evm.dtb"
> +#define SPL_AM642_SK_DTB "spl/dts/k3-am642-sk.dtb"
> +
> +#define UBOOT_NODTB "u-boot-nodtb.bin"
> +#define AM642_EVM_DTB "arch/arm/dts/k3-am642-evm.dtb"
> +#define AM642_SK_DTB "arch/arm/dts/k3-am642-sk.dtb"
> +
> +&binman {
> + ti-spl {
> + filename = TISPL;
> + pad-byte = <0xff>;
> +
> + fit {
> + description = "Configuration to load ATF and SPL";
> + #address-cells = <1>;
> +
> + images {
> +
> + atf {
> + description = "ARM Trusted Firmware";
> + type = "firmware";
> + arch = "arm64";
> + compression = "none";
> + os = "arm-trusted-firmware";
> + load = <CONFIG_K3_ATF_LOAD_ADDR>;
> + entry = <CONFIG_K3_ATF_LOAD_ADDR>;
> + atf-bl31 {
> + filename = "bl31.bin";
> + };
On HS, bl31.bin and the below TEE and DM images must also be signed
before being packaged into tispl.bin.
Can we add signing here?
Andrew
> + };
> +
> + tee {
> + description = "OPTEE";
> + type = "tee";
> + arch = "arm64";
> + compression = "none";
> + os = "tee";
> + load = <0x9e800000>;
> + entry = <0x9e800000>;
> + tee-os {
> + filename = "tee-pager_v2.bin";
> + };
> + };
> +
> + dm {
> + description = "DM binary";
> + type = "firmware";
> + arch = "arm32";
> + compression = "none";
> + os = "DM";
> + load = <0x89000000>;
> + entry = <0x89000000>;
> + blob-ext {
> + filename = "/dev/null";
> + };
> + };
> +
> + spl {
> + description = "SPL (64-bit)";
> + type = "standalone";
> + os = "U-Boot";
> + arch = "arm64";
> + compression = "none";
> + load = <0x80080000>;
> + entry = <0x80080000>;
> +#ifdef CONFIG_TI_SECURE_DEVICE
> + ti-secure {
> +#else
> + blob {
> +#endif
> + filename = SPL_NODTB;
> + };
> + };
> +
> + fdt-1 {
> + description = "k3-am642-evm";
> + type = "flat_dt";
> + arch = "arm";
> + compression = "none";
> +#ifdef CONFIG_TI_SECURE_DEVICE
> + ti-secure {
> +#else
> + blob {
> +#endif
> + filename = SPL_AM642_EVM_DTB;
> + };
> + };
> +
> + fdt-2 {
> + description = "k3-am642-sk";
> + type = "flat_dt";
> + arch = "arm";
> + compression = "none";
> +#ifdef CONFIG_TI_SECURE_DEVICE
> + ti-secure {
> +#else
> + blob {
> +#endif
> + filename = SPL_AM642_SK_DTB;
> + };
> + };
> + };
> +
> + configurations {
> + default = "conf-1";
> +
> + conf-1 {
> + description = "k3-am642-evm";
> + firmware = "atf";
> + loadables = "tee", "dm", "spl";
> + fdt = "fdt-1";
> + };
> +
> + conf-2 {
> + description = "k3-am642-sk";
> + firmware = "atf";
> + loadables = "tee", "dm", "spl";
> + fdt = "fdt-2";
> + };
> + };
> + };
> + };
> +};
> +
> +&binman {
> + u-boot {
> + filename = UBOOT_IMG;
> + pad-byte = <0xff>;
> +
> + fit {
> + description = "FIT image with multiple configurations";
> +
> + images {
> + uboot {
> + description = "U-Boot for am64x board";
> + type = "firmware";
> + os = "u-boot";
> + arch = "arm";
> + compression = "none";
> + load = <CONFIG_SYS_TEXT_BASE>;
> +#ifdef CONFIG_TI_SECURE_DEVICE
> + ti-secure {
> +#else
> + blob {
> +#endif
> + filename = UBOOT_NODTB;
> + };
> + hash {
> + algo = "crc32";
> + };
> + };
> +
> + fdt-1 {
> + description = "k3-am642-evm";
> + type = "flat_dt";
> + arch = "arm";
> + compression = "none";
> +#ifdef CONFIG_TI_SECURE_DEVICE
> + ti-secure {
> +#else
> + blob {
> +#endif
> + filename = AM642_EVM_DTB;
> + };
> + hash {
> + algo = "crc32";
> + };
> + };
> +
> + fdt-2 {
> + description = "k3-am642-sk";
> + type = "flat_dt";
> + arch = "arm";
> + compression = "none";
> +#ifdef CONFIG_TI_SECURE_DEVICE
> + ti-secure {
> +#else
> + blob {
> +#endif
> + filename = AM642_SK_DTB;
> + };
> + hash {
> + algo = "crc32";
> + };
> + };
> + };
> +
> + configurations {
> + default = "conf-1";
> +
> + conf-1 {
> + description = "k3-am642-evm";
> + firmware = "uboot";
> + loadables = "uboot";
> + fdt = "fdt-1";
> + };
> +
> + conf-2 {
> + description = "k3-am642-sk";
> + firmware = "uboot";
> + loadables = "uboot";
> + fdt = "fdt-2";
> + };
> + };
> + };
> + };
> +};
> +#endif
> diff --git a/arch/arm/dts/k3-am642-evm-u-boot.dtsi b/arch/arm/dts/k3-am642-evm-u-boot.dtsi
> index 03688a51a3..db0a529f0f 100644
> --- a/arch/arm/dts/k3-am642-evm-u-boot.dtsi
> +++ b/arch/arm/dts/k3-am642-evm-u-boot.dtsi
> @@ -2,6 +2,9 @@
> /*
> * Copyright (C) 2020-2021 Texas Instruments Incorporated - https://www.ti.com/
> */
> +#include <config.h>
> +
> +#include "k3-am642-evm-binman.dtsi"
>
> / {
> chosen {
> diff --git a/arch/arm/mach-k3/Kconfig b/arch/arm/mach-k3/Kconfig
> index a01bf23514..a4c561254d 100644
> --- a/arch/arm/mach-k3/Kconfig
> +++ b/arch/arm/mach-k3/Kconfig
> @@ -15,6 +15,7 @@ config SOC_K3_J721S2
>
> config SOC_K3_AM642
> bool "TI's K3 based AM642 SoC Family Support"
> + select BINMAN if TARGET_AM642_A53_EVM
>
> endchoice
>
> diff --git a/arch/arm/mach-k3/config.mk b/arch/arm/mach-k3/config.mk
> index da458bcfb2..d2c490818a 100644
> --- a/arch/arm/mach-k3/config.mk
> +++ b/arch/arm/mach-k3/config.mk
> @@ -47,6 +47,7 @@ tiboot3.bin: image_check FORCE
> INPUTS-y += tiboot3.bin
> endif
>
> +ifndef CONFIG_BINMAN
> ifdef CONFIG_ARM64
>
> ifeq ($(CONFIG_SOC_K3_J721E),)
> @@ -77,9 +78,11 @@ cmd_k3_mkits = \
> $(SPL_ITS): FORCE
> $(call cmd,k3_mkits)
> endif
> +endif
>
> else
>
> +ifndef CONFIG_BINMAN
> ifeq ($(CONFIG_TI_SECURE_DEVICE),y)
> INPUTS-y += u-boot.img_HS
> else
> @@ -87,4 +90,8 @@ INPUTS-y += u-boot.img
> endif
> endif
>
> +endif
> +
> +ifndef CONFIG_BINMAN
> include $(srctree)/arch/arm/mach-k3/config_secure.mk
> +endif
next prev parent reply other threads:[~2022-05-24 22:03 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-09 7:29 [u-boot PATCH 0/3] k3-am642-evm-u-boot: Use binman to generate u-boot.img and tispl.bin Roger Quadros
2022-05-09 7:29 ` [u-boot PATCH 1/3] tools: binman: add ti-secure entry type Roger Quadros
2022-05-09 7:29 ` [u-boot PATCH 2/3] tools/fdtgrep: Include __symbols__ table Roger Quadros
2022-06-10 13:42 ` Tom Rini
2022-06-11 8:43 ` Roger Quadros
2022-06-11 13:26 ` Tom Rini
2022-05-09 7:29 ` [u-boot PATCH 3/3] k3-am642-evm-u-boot: Use binman to generate u-boot.img and tispl.bin Roger Quadros
2022-05-24 22:03 ` Andrew Davis [this message]
2022-05-25 8:30 ` Roger Quadros
2022-05-25 15:14 ` Andrew Davis
2022-05-26 7:28 ` Roger Quadros
2022-05-26 14:15 ` Tom Rini
2022-05-27 17:50 ` Alper Nebi Yasak
2022-05-31 5:06 ` Roger Quadros
2022-05-31 14:15 ` Andrew Davis
2022-06-02 17:34 ` Alper Nebi Yasak
2022-05-09 13:39 ` [u-boot PATCH 0/3] " 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=3dec7c74-e486-79da-e4e7-cad6205471a5@ti.com \
--to=afd@ti.com \
--cc=nm@ti.com \
--cc=praneeth@ti.com \
--cc=rogerq@kernel.org \
--cc=sjg@chromium.org \
--cc=trini@konsulko.com \
--cc=u-boot@lists.denx.de \
--cc=vigneshr@ti.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox