[PATCH] fdt: fix phandles not copying when using templates

Anshul Dalal anshuld at ti.com
Fri Jul 3 11:19:25 CEST 2026


On Wed Jul 1, 2026 at 5:37 PM IST, Simon Glass wrote:
> 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?
>

No, the issue of bootph property only being propagated to the parent
nodes in u-boot.dtb.out and not in u-boot.dtb is a different one.

I'm still working through that issue, will CC you on a fix once ready.

> Please can you add a test for this new behaviour.

Sure, will send a v2 with a test.

Anshul


More information about the U-Boot mailing list