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 BC443C433F5 for ; Mon, 18 Apr 2022 19:59:09 +0000 (UTC) Received: from h2850616.stratoserver.net (localhost [IPv6:::1]) by phobos.denx.de (Postfix) with ESMTP id 8AFEC83BB6; Mon, 18 Apr 2022 21:58:56 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmail.com 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=gmail.com header.i=@gmail.com header.b="l8fQXpQW"; dkim-atps=neutral Received: by phobos.denx.de (Postfix, from userid 109) id 88E1883B4E; Mon, 18 Apr 2022 21:58:51 +0200 (CEST) Received: from mail-ed1-x536.google.com (mail-ed1-x536.google.com [IPv6:2a00:1450:4864:20::536]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by phobos.denx.de (Postfix) with ESMTPS id F1F4183B4C for ; Mon, 18 Apr 2022 21:58:47 +0200 (CEST) Authentication-Results: phobos.denx.de; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: phobos.denx.de; spf=pass smtp.mailfrom=alpernebiyasak@gmail.com Received: by mail-ed1-x536.google.com with SMTP id 11so13625425edw.0 for ; Mon, 18 Apr 2022 12:58:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=message-id:date:mime-version:user-agent:from:subject:to:cc :references:content-language:in-reply-to:content-transfer-encoding; bh=uwVpuFdV5LUcuu31hBRDbVhuPrmKev0uNAoDRQzeELI=; b=l8fQXpQWmfVAUjUnwgTfxD3oceIDwN2ap4PyZG4ChfQllsLcodicUYLG0zToicbmQN rXb2ReBK2FdaEoDam4Stw+leHVevh7gb3QwMSLe2D9Hr05rXpwutSwbQXoHU5zIgnZzV aB3UsOXt4T19pgh0InDiPAHqIlq1QjfF4C/Knw+FYv6q2wZckvQsM18paUCSl7hrQOUU s2BEpkfIam9vyQ8F2B7j5DcEXkyB+ZV0HPrc47d5dbvDwYM1P88t649uW9CwPf9g7jnu p+aFYzNh3iBcTabx97CHSxvJcbtiaT6BDDSBTvAfGo0TTvXDeSZ/gjaV4OJd6Gb88fry E22w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:date:mime-version:user-agent:from :subject:to:cc:references:content-language:in-reply-to :content-transfer-encoding; bh=uwVpuFdV5LUcuu31hBRDbVhuPrmKev0uNAoDRQzeELI=; b=uXeN/vLEBbq7XE96Xht/jUhfXiA1ZUvtItFOBuaOmMegnqeXISiKmrfeQjGpY8IwEj kQHhwkwRn/ZQl789j8hyuqjK8mdbKPpyhEOevVaycVeu+XK3YQ7p/ke6pGt/8CHlY1zh BX9xk0A4SEFX/YVq0xC68ZpXIl6j5tWiS1/01OIh7cnxNoNhCkVyJL8+ffNKtWiEfrW+ /cXDpeI6Q4KgK/IL3rPhQdkckgMyFSeuzuLx+koRcSnZwEOQaiFM64eSfDNFMqMHteXr S4a3TstOYACMyIWYePQk26+B1AK5YDLc7mquSzl85Aei7q1WbNTWm+3LSIRWz7A4Buxj vRbA== X-Gm-Message-State: AOAM531vmfeY9cibjIs+Z+MwEgqVqoyWuBy7oUSxAhuXlKd/tuXwJOgD 0eqN/SoC+CFrhcVG7emRLw0= X-Google-Smtp-Source: ABdhPJyndYlRLbnOGiZ6aIQ/NBWhhgu5RwGEEU/5IicOCIkkrpWuZ1x0W2G/oQc65nIJGKsrABxtAQ== X-Received: by 2002:a05:6402:27cb:b0:423:d386:42be with SMTP id c11-20020a05640227cb00b00423d38642bemr12142682ede.227.1650311927424; Mon, 18 Apr 2022 12:58:47 -0700 (PDT) Received: from [192.168.0.74] ([178.233.178.185]) by smtp.gmail.com with ESMTPSA id s20-20020a056402015400b00418f9574a36sm7424808edu.73.2022.04.18.12.58.44 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 18 Apr 2022 12:58:46 -0700 (PDT) Message-ID: Date: Mon, 18 Apr 2022 22:57:02 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux aarch64; rv:91.0) Gecko/20100101 Thunderbird/91.8.0 From: Alper Nebi Yasak Subject: Re: [RESEND, RFC 8/8] binman: dtsi: tispl: j721e: Use binman to package tispl.bin To: Neha Malcom Francis Cc: sjg@chromium.org, marek.behun@nic.cz, xypron.glpk@gmx.de, vigneshr@ti.com, a-govindraju@ti.com, kristo@kernel.org, s-anna@ti.com, kishon@ti.com, joel.peshkin@broadcom.com, patrick.delaunay@foss.st.com, mr.nuke.me@gmail.com, nm@ti.com, u-boot@lists.denx.de References: <20220406122919.6104-1-n-francis@ti.com> <20220406122919.6104-9-n-francis@ti.com> Content-Language: en-US In-Reply-To: <20220406122919.6104-9-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/04/2022 15:29, 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. > > 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/j721e-a72-binman.dtsi | 92 +++++++++++++++++++ > .../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, 94 insertions(+), 37 deletions(-) > create mode 100644 arch/arm/dts/j721e-a72-binman.dtsi > > diff --git a/arch/arm/dts/j721e-a72-binman.dtsi b/arch/arm/dts/j721e-a72-binman.dtsi I'd like a 'k3-' prefix also for this file. > new file mode 100644 > index 0000000000..a01b1fcc6d > --- /dev/null > +++ b/arch/arm/dts/j721e-a72-binman.dtsi > @@ -0,0 +1,92 @@ > +// 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>; > + fit,fdt-list = "of-list"; I guess this prop isn't necessary as you aren't using @fdt-SEQ etc. > + images { > + atf { > + description = "ARM Trusted Firmware"; > + type = "firmware"; > + arch = "arm64"; > + compression = "none"; > + os = "arm-trusted-firmware"; > + load = ; > + entry = ; > + atf-bl31 { > + filename = "bl31.bin"; > + }; AFAICT, these named-by-arg blobs shouldn't need you to specify a filename, they can be handled by environment variables like BL31 etc. But I see a few instances of this in other files so I'm not sure. > + }; > + tee { > + description = "OPTEE"; > + type = "tee"; > + arch = "arm64"; > + compression = "none"; > + os = "tee"; > + load = <0x9e800000>; > + entry = <0x9e800000>; > + tee-os { > + filename = "tee-pager.bin"; > + missing-msg = "tee-os"; > + }; > + }; > + dm { > + description = "DM binary"; > + type = "firmware"; > + arch = "arm32"; > + compression = "none"; > + os = "DM"; > + load = <0x89000000>; > + entry = <0x89000000>; > + ti-dm { > + filename = "dm.bin"; > + }; > + }; > + spl { > + description = "SPL (64-bit)"; > + type = "standalone"; > + os = "U-Boot"; > + arch = "arm64"; > + compression = "none"; > + load = <0x80080000>; > + entry = <0x80080000>; Maybe these could be CONFIG_SPL_TEXT_BASE? I don't exactly know. > + blob-ext { > + filename = "spl/u-boot-spl-nodtb.bin"; > + }; This should be a u-boot-spl-nodtb entry. > + }; > + 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"; > + }; And this should be a u-boot-spl-dtb entry, assuming this dtb is the same as spl/u-boot-spl.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..78ec6b1d48 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 "j721e-a72-binman.dtsi" > > / { > chosen { > diff --git a/arch/arm/mach-k3/config.mk b/arch/arm/mach-k3/config.mk > index 5491fc4dc8..e4b94564b8 100644 > --- a/arch/arm/mach-k3/config.mk > +++ b/arch/arm/mach-k3/config.mk > @@ -72,38 +72,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 \ Doesn't look like anything else uses k3_fit_atf.sh, you might want to remove the script in a new patch. > - $(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 > 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 83a95ee4aa..21dc434449 100644 > --- a/scripts/Makefile.spl > +++ b/scripts/Makefile.spl > @@ -574,7 +574,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