From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from phobos.denx.de (phobos.denx.de [85.214.62.61]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 90449C433F5 for ; Tue, 31 May 2022 11:03:08 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 6446580A3F; Tue, 31 May 2022 13:03:06 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=kernel.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=u-boot-bounces@lists.denx.de Authentication-Results: phobos.denx.de; dkim=pass (2048-bit key; unprotected) header.d=kernel.org header.i=@kernel.org header.b="jhjikMFY"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id DA5C482125; Tue, 31 May 2022 13:03:04 +0200 (CEST) Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id C1A4980029 for ; Tue, 31 May 2022 13:03:00 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=kernel.org Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=rogerq@kernel.org Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 63CD2B80CEF; Tue, 31 May 2022 11:03:00 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 696B2C385A9; Tue, 31 May 2022 11:02:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1653994979; bh=sDT09sJfAM8/kA+UrWP5xScwNEcafEhHmA9cagNVsUE=; h=Date:Subject:To:References:From:In-Reply-To:From; b=jhjikMFYKnuK/qQzWHSAc/U4L2Zvz926tUUjV+xaobl7wMtC3d8Y4a5Qk6O30pWgJ P4HLrkcVIt6r4dxGe9stOIvP6gQQh7aJQNZdGk5peZ6412ZNd4WxoqiGYGvxhcDKDe D3vjfX6c0ruZ0AVO1NfcPXBM0LziXggu1tG7SMlgALhy2ZJMIJiQdH58Yica9vNJLO lalErIPrgszNqs3aNM/4pZDee/J9YxLiFaxrzP6KNcy0eHA7gwy8pVe2KREZzUB5Z4 l6yfBQeNwI1Is0//+GdfglpospZeH5bv0gE+ZAZC2iXuKozImzEr9wps2KYhnPLmcA 3DhpouijdMTiw== Message-ID: <8c30d625-c7eb-b55d-e0d6-3b43b15f5627@kernel.org> Date: Tue, 31 May 2022 14:02:55 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0 Subject: Re: [PATCH RFC v2 11/11] ti: dtsi: j721e: Use binman to package tispl.bin Content-Language: en-US To: Neha Malcom Francis , u-boot@lists.denx.de References: <20220506043759.8193-1-n-francis@ti.com> <20220506043759.8193-12-n-francis@ti.com> From: Roger Quadros In-Reply-To: <20220506043759.8193-12-n-francis@ti.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.39 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" X-Virus-Scanned: clamav-milter 0.103.5 at phobos.denx.de X-Virus-Status: Clean On 06/05/2022 07:37, Neha Malcom Francis wrote: > Explicit make commands were earlier used to generate tispl.bin image, > now it is replaced using binman. > > Binman picks up and packages entries according to the description of > entries given in the binman node in the device tree. The make commands > that were earlier responsible for generating tispl.bin has been removed. > > k3-j721e-a72-binman.dtsi has been introduced for A72 specific binman node. > It can be included in files that require it like > k3-j721e-common-proc-board-u-boot.dtsi. > > Note that make commands for secure devices has also been removed as > focus is on general purpose devices at present time. > > Signed-off-by: Tarun Sahu > [n-francis@ti.com: prepared patch for upstreaming] > Signed-off-by: Neha Malcom Francis > --- > arch/arm/dts/k3-j721e-a72-binman.dtsi | 86 +++++++++++++++++++ > .../k3-j721e-common-proc-board-u-boot.dtsi | 1 + > arch/arm/mach-k3/config.mk | 33 ------- > board/ti/j721e/Kconfig | 1 + > scripts/Makefile.spl | 4 - > 5 files changed, 88 insertions(+), 37 deletions(-) > create mode 100644 arch/arm/dts/k3-j721e-a72-binman.dtsi > > diff --git a/arch/arm/dts/k3-j721e-a72-binman.dtsi b/arch/arm/dts/k3-j721e-a72-binman.dtsi > new file mode 100644 > index 0000000000..beb3424bb9 > --- /dev/null > +++ b/arch/arm/dts/k3-j721e-a72-binman.dtsi > @@ -0,0 +1,86 @@ > +// SPDX-License-Identifier: GPL-2.0+ > +// Copyright (C) 2022 Texas Instruments Incorporated - https://www.ti.com/ > + > +#include > + > +#ifdef CONFIG_ARM64 > +/ { > + binman: binman { > + multiple-images; > + }; > +}; > + > +&binman { > + tispl { > + filename = "tispl.bin"; > + fit { > + description = "FIT IMAGE"; > + #address-cells = <1>; > + images { > + atf { > + description = "ARM Trusted Firmware"; > + type = "firmware"; > + arch = "arm64"; > + compression = "none"; > + os = "arm-trusted-firmware"; > + load = ; > + entry = ; > + atf-bl31 { > + }; > + }; > + tee { > + description = "OPTEE"; > + type = "tee"; > + arch = "arm64"; > + compression = "none"; > + os = "tee"; > + load = <0x9e800000>; > + entry = <0x9e800000>; > + tee-os { > + }; > + }; > + dm { > + description = "DM binary"; > + type = "firmware"; > + arch = "arm32"; > + compression = "none"; > + os = "DM"; > + load = <0x89000000>; > + entry = <0x89000000>; > + ti-dm { > + }; > + }; > + spl { > + description = "SPL (64-bit)"; > + type = "standalone"; > + os = "U-Boot"; > + arch = "arm64"; > + compression = "none"; > + load = ; > + entry = ; > + u-boot-spl-nodtb { > + }; > + }; > + k3-j721e-common-proc-board.dtb { > + description = "k3-j721e-common-proc-board"; > + type = "flat_dt"; > + arch = "arm"; > + compression = "none"; > + blob-ext { > + filename = "spl/dts/k3-j721e-common-proc-board.dtb"; > + }; > + }; > + }; > + configurations { > + default = "conf"; > + conf { > + description = "k3-j721e-common-proc-board"; > + firmware = "atf"; > + loadables = "tee", "dm", "spl"; > + fdt = "k3-j721e-common-proc-board.dtb"; > + }; > + }; > + }; > + }; > +}; > +#endif > diff --git a/arch/arm/dts/k3-j721e-common-proc-board-u-boot.dtsi b/arch/arm/dts/k3-j721e-common-proc-board-u-boot.dtsi > index 677a72d2a2..6490d71f7e 100644 > --- a/arch/arm/dts/k3-j721e-common-proc-board-u-boot.dtsi > +++ b/arch/arm/dts/k3-j721e-common-proc-board-u-boot.dtsi > @@ -4,6 +4,7 @@ > */ > > #include > +#include "k3-j721e-a72-binman.dtsi" > > / { > chosen { > diff --git a/arch/arm/mach-k3/config.mk b/arch/arm/mach-k3/config.mk > index 49f80ae79b..e0d9ea97c9 100644 > --- a/arch/arm/mach-k3/config.mk > +++ b/arch/arm/mach-k3/config.mk > @@ -52,38 +52,5 @@ ifeq ($(CONFIG_SOC_K3_J721E),) > export DM := /dev/null > endif > > -ifeq ($(CONFIG_TI_SECURE_DEVICE),y) > -SPL_ITS := u-boot-spl-k3_HS.its > -$(SPL_ITS): export IS_HS=1 > -INPUTS-y += tispl.bin_HS > -else > -SPL_ITS := u-boot-spl-k3.its > -INPUTS-y += tispl.bin > -endif > - > -ifeq ($(CONFIG_SPL_OF_LIST),) > -LIST_OF_DTB := $(CONFIG_DEFAULT_DEVICE_TREE) > -else > -LIST_OF_DTB := $(CONFIG_SPL_OF_LIST) > endif > - > -quiet_cmd_k3_mkits = MKITS $@ > -cmd_k3_mkits = \ > - $(srctree)/tools/k3_fit_atf.sh \ > - $(CONFIG_K3_ATF_LOAD_ADDR) \ > - $(patsubst %,$(obj)/dts/%.dtb,$(subst ",,$(LIST_OF_DTB))) > $@ > - > -$(SPL_ITS): FORCE > - $(call cmd,k3_mkits) > endif > - > -else > - > -ifeq ($(CONFIG_TI_SECURE_DEVICE),y) > -INPUTS-y += u-boot.img_HS > -else > -INPUTS-y += u-boot.img > -endif > -endif > - > -include $(srctree)/arch/arm/mach-k3/config_secure.mk You can't yet remove these as all K3 platforms are not converted to use binman. Please include them under #ifndef CONFIG_BINMAN...#endif One more question I have is that how are _HS binaries being created with binman? > diff --git a/board/ti/j721e/Kconfig b/board/ti/j721e/Kconfig > index a3a9d504ae..3cf05f0d3b 100644 > --- a/board/ti/j721e/Kconfig > +++ b/board/ti/j721e/Kconfig > @@ -14,6 +14,7 @@ config TARGET_J721E_A72_EVM > select BOARD_LATE_INIT > imply TI_I2C_BOARD_DETECT > select SYS_DISABLE_DCACHE_OPS > + select BINMAN > > config TARGET_J721E_R5_EVM > bool "TI K3 based J721E EVM running on R5" > diff --git a/scripts/Makefile.spl b/scripts/Makefile.spl > index 6ad82cecfb..5f8a8487c5 100644 > --- a/scripts/Makefile.spl > +++ b/scripts/Makefile.spl > @@ -577,7 +577,3 @@ $(obj)/$(SPL_BIN).multidtb.fit.gz: $(obj)/$(SPL_BIN).multidtb.fit > $(obj)/$(SPL_BIN).multidtb.fit.lzo: $(obj)/$(SPL_BIN).multidtb.fit > @lzop -f9 $< > $@ > > -ifdef CONFIG_ARCH_K3 > -tispl.bin: $(obj)/u-boot-spl-nodtb.bin $(SHRUNK_ARCH_DTB) $(SPL_ITS) FORCE > - $(call if_changed,mkfitimage) > -endif Please don't remove this but include it under #ifndef CONFIG_BINMAN...#endif cheers, -roger