[PATCH] arm: dts: k3: binman: Fix DM firmware selection

Bryan Brattlof bb at ti.com
Mon Apr 28 15:36:26 CEST 2025


On April 25, 2025 thus sayeth Andrew Davis:
> Just like TF-A and OP-TEE, the documentation states a custom path for DM
> can be provided at build time by setting TI_DM. This should then set
> ti-dm-path which updates ti-dm node filenames in binman.
> 
> Two issues prevent this from functioning for most K3 boards. One is when
> then DM firmware name is inside a blob-ext node instead of a ti-dm node.
> 
> The second is when the filename in the ti-dm node is a pointer to a
> blob-ext node. In this case even though the filename is updated, the
> filename in the blob-ext is not, so build can fail if the default
> file in the blob-ext cannot be found, even if the updated ti-dm file
> does exist.
> 
> Fix both of these for all K3 by removing any indirect ti-dm nodes and
> making sure all DM nodes are labeled with "ti-dm".
> 
> Signed-off-by: Andrew Davis <afd at ti.com>

For the few sitars boards this works :)

Reviewed-by: Bryan Brattlof <bb at ti.com>

> ---
>  arch/arm/dts/k3-am625-beagleplay-u-boot.dtsi  | 11 ++-----
>  arch/arm/dts/k3-am625-phycore-som-binman.dtsi | 15 +++-------
>  arch/arm/dts/k3-am625-sk-binman.dtsi          | 14 +++------
>  .../dts/k3-am625-verdin-wifi-dev-binman.dtsi  | 11 ++-----
>  arch/arm/dts/k3-am62a-phycore-som-binman.dtsi | 14 +++------
>  arch/arm/dts/k3-am62a-sk-binman.dtsi          | 14 +++------
>  arch/arm/dts/k3-am62p-sk-binman.dtsi          | 11 ++-----
>  arch/arm/dts/k3-am67a-beagley-ai-u-boot.dtsi  | 12 ++------
>  arch/arm/dts/k3-am69-sk-u-boot.dtsi           | 29 +++++++++++++------
>  arch/arm/dts/k3-j7200-binman.dtsi             | 13 +++------
>  .../dts/k3-j721e-beagleboneai64-u-boot.dtsi   | 11 ++-----
>  arch/arm/dts/k3-j721e-binman.dtsi             | 13 +++------
>  arch/arm/dts/k3-j721s2-binman.dtsi            | 13 +++------
>  arch/arm/dts/k3-j722s-binman.dtsi             | 12 ++------
>  arch/arm/dts/k3-j742s2-evm-u-boot.dtsi        | 29 +++++++++++++------
>  arch/arm/dts/k3-j784s4-binman.dtsi            |  8 ++---
>  arch/arm/dts/k3-j784s4-evm-u-boot.dtsi        | 29 +++++++++++++------
>  17 files changed, 104 insertions(+), 155 deletions(-)
> 

...

>  
> diff --git a/arch/arm/dts/k3-am625-sk-binman.dtsi b/arch/arm/dts/k3-am625-sk-binman.dtsi
> index 534eb14795b..cc619f5920e 100644
> --- a/arch/arm/dts/k3-am625-sk-binman.dtsi
> +++ b/arch/arm/dts/k3-am625-sk-binman.dtsi
> @@ -156,14 +156,6 @@
>  #define AM625_SK_DTB "u-boot.dtb"
>  
>  &binman {
> -	ti-dm {
> -		filename = "ti-dm.bin";
> -		blob-ext {
> -			filename = "ti-dm/am62xx/ipc_echo_testb_mcu1_0_release_strip.xer5f";
> -			optional;
> -		};
> -	};
> -
>  	tifsstub-hs {
>  		filename = "tifsstub.bin_hs";
>  		ti-secure-rom {
> @@ -270,7 +262,8 @@
>  						keyfile = "custMpk.pem";
>  					};
>  					dm: ti-dm {
> -						filename = "ti-dm.bin";
> +						filename = "ti-dm/am62xx/ipc_echo_testb_mcu1_0_release_strip.xer5f";
> +						optional;
>  					};

So I was curious of this optional flag. Is the issue here that we only 
check for mandatory binaries via BINMAN_INDIRS and not through all the 
custom arguments like TI_DM?

~Bryan


More information about the U-Boot mailing list