[PATCH] fdt: fix phandles not copying when using templates
Simon Glass
sjg at chromium.org
Wed Jul 1 14:07:26 CEST 2026
Hi Anshul,
On Mon, 29 Jun 2026 at 11:49, Anshul Dalal <anshuld at ti.com> wrote:
>
> The phandles used inside a template were not being copied to the node
> inserting the template, leading to a missing phandle error.
>
> The following example can be used to reproduce the issue:
>
> &binman {
> some_template: template-0 {
> ti-secure-rom {
> content = <&some_data>;
> keyfile = "some_key";
> };
> some_data: blob-ext {
> optional;
> };
> };
> output-bin {
> insert-template = <&some_template>;
> };
> };
>
> With the error 'binman: Node '/binman/output-bin/ti-secure-rom': Cannot
> find node for phandle 103' observed.
>
> Signed-off-by: Anshul Dalal <anshuld at ti.com>
> ---
> tools/dtoc/fdt.py | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/dtoc/fdt.py b/tools/dtoc/fdt.py
> index 991a36b98796..6c3449095194 100644
> --- a/tools/dtoc/fdt.py
> +++ b/tools/dtoc/fdt.py
> @@ -780,7 +780,7 @@ class Node:
> parent = self.GetFdt().LookupPhandle(phandle)
> tout.debug(f'adding template {parent.path} to node {self.path}')
> for node in parent.subnodes.__reversed__():
> - dst = self.copy_node(node)
> + dst = self.copy_node(node, True)
I believe this is the one you pinged about on irc?
Please can you add a test for this new behaviour.
>
> tout.debug(f'merge props from {parent.path} to {self.path}')
> self.merge_props(parent, False)
>
> ---
> base-commit: 63f6cc8ba618396cb9c0161bb5c6d217604ae1d0
> change-id: 20260629-binman_template_phandle_copy_fix-956bc3ce48d6
>
> Best regards,
> --
> Anshul Dalal <anshuld at ti.com>
>
Regards,
Simon
More information about the U-Boot
mailing list