Hi, On Thu, 13 Feb 2025 at 00:36, Manorit Chawdhry <m-chawd...@ti.com> wrote: > > From: Neha Malcom Francis <n-fran...@ti.com> > > Dynamically going through the subnode array and deleting leads to > templates being skipped from deletion when templates are consecutive in > the subnode list. Prevent this from happening by first parsing the DT > and then deleting the nodes. > > Signed-off-by: Neha Malcom Francis <n-fran...@ti.com> > Reviewed-by: Simon Glass <s...@chromium.org> > --- > tools/binman/control.py | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/tools/binman/control.py b/tools/binman/control.py > index > e73c598298cef76cfdf4f0f8a021feac1e7b825a..81f61e3e152a9eab558cfc9667131a38082b61a1 > 100644 > --- a/tools/binman/control.py > +++ b/tools/binman/control.py > @@ -522,9 +522,13 @@ def _ProcessTemplates(parent): > def _RemoveTemplates(parent): > """Remove any templates in the binman description > """ > + del_nodes = [] > for node in parent.subnodes: > if node.name.startswith('template'): > - node.Delete() > + del_nodes.append(node) > + > + for node in del_nodes: > + node.Delete() > > def PrepareImagesAndDtbs(dtb_fname, select_images, update_fdt, use_expanded, > indir): > """Prepare the images to be processed and select the device tree > > -- > 2.34.1 >
Can you also please add a test for this, to check that the template is removed? Regards, Simon