Hi Paul, On Mon, 25 Nov 2024 at 11:17, Paul HENRYS <paul.henrys_...@softathome.com> wrote: > > When specifying a directory containing DTBs with 'fit,fdt-list-dir', it can be > handy not to have to also specify this directory to the input directories of > binman with '-I' option and use the method tools.append_input_dirs() append > it. > This avoids to have to specify the DTB directory in both the device tree > provided to binman and through '-I' option to binman. > > Signed-off-by: Paul HENRYS <paul.henrys_...@softathome.com> > --- > tools/binman/etype/fit.py | 2 ++ > tools/binman/ftest.py | 5 ++++- > 2 files changed, 6 insertions(+), 1 deletion(-) >
Reviewed-by: Simon Glass <s...@chromium.org> But please add something to the FIT docs (and regenerate entries.rst) so people know about this. I would actually prefer something ephemeral, i.e. that just adds the extra dirs for FIT and not the whole of Binman, but that's a minor point and would be more complicated to implement. > diff --git a/tools/binman/etype/fit.py b/tools/binman/etype/fit.py > index 343094a16e..803fb66ea8 100644 > --- a/tools/binman/etype/fit.py > +++ b/tools/binman/etype/fit.py > @@ -477,6 +477,8 @@ class Entry_fit(Entry_section): > self._fdt_dir = fdt_util.GetString(self._node, > 'fit,fdt-list-dir') > if self._fdt_dir: > indir = tools.get_input_filename(self._fdt_dir) > + if indir: > + tools.append_input_dirs(indir) > fdts = glob.glob('*.dtb', root_dir=indir) > self._fdts = [os.path.splitext(f)[0] for f in sorted(fdts)] > else: > diff --git a/tools/binman/ftest.py b/tools/binman/ftest.py > index 4a2a9f2288..a553ca9e56 100644 > --- a/tools/binman/ftest.py > +++ b/tools/binman/ftest.py > @@ -4285,14 +4285,17 @@ class TestFunctional(unittest.TestCase): > entry_args = { > 'default-dt': 'test-fdt2', > } > + extra_indirs = None > if use_fdt_list: > entry_args['of-list'] = 'test-fdt1 test-fdt2' > if default_dt: > entry_args['default-dt'] = default_dt > + if use_fdt_list: > + extra_indirs = [os.path.join(self._indir, TEST_FDT_SUBDIR)] > data = self._DoReadFileDtb( > dts, > entry_args=entry_args, > - extra_indirs=[os.path.join(self._indir, TEST_FDT_SUBDIR)])[0] > + extra_indirs=extra_indirs)[0] > self.assertEqual(U_BOOT_NODTB_DATA, data[-len(U_BOOT_NODTB_DATA):]) > fit_data = data[len(U_BOOT_DATA):-len(U_BOOT_NODTB_DATA)] > > -- > 2.43.0 > Regards, Simon