Hi Marek, On Wed, 13 Jul 2022 at 09:30, Marek Vasut <ma...@denx.de> wrote: > > On 7/13/22 17:28, Simon Glass wrote: > > Hi Marek, > > > > On Tue, 12 Jul 2022 at 05:47, Marek Vasut <ma...@denx.de> wrote: > >> > >> On 7/12/22 12:58, Simon Glass wrote: > >>> Hi Marek, > >>> > >>> On Fri, 8 Jul 2022 at 15:50, Marek Vasut <ma...@denx.de> wrote: > >>>> > >>>> The fdt command currently handles stringlists as strings in 'fdt get > >>>> value' > >>>> subcommand. Since strings in FDT stringlists are separated by '\0', only > >>>> the first value gets inserted into the environment variable passed to the > >>>> 'fdt get value' command. > >>>> > >>>> Example, consider the following DT snippet: > >>>> > >>>> / { compatible = "foo", "bar" }; > >>>> > >>>> The following command only reports the first string in stringlist: > >>>> => fdt get value var / compatible ; print var > >>>> foo > >>>> > >>>> It is not possible to assign list of null-terminated strings into U-Boot > >>>> environment variable. Add optional 'index' parameter to the subcommand > >>>> 'fdt get value <var> <path> <prop> [<index>]' which lets user specify > >>>> which > >>>> string within the stringlist should be assigned into the 'var' variable. > >>>> The default value of 'index' is 0 in case it is not present. This way the > >>>> 'fdt' command API does not change and existing scripts are not broken. > >>>> > >>>> The following command now reports the Nth string in stringlist, counting > >>>> from zero: > >>>> => fdt get value var / compatible 1 ; print var > >>>> bar > >>>> > >>>> Signed-off-by: Marek Vasut <ma...@denx.de> > >>>> Cc: Heinrich Schuchardt <heinrich.schucha...@canonical.com> > >>>> Cc: Simon Glass <s...@chromium.org> > >>>> Cc: Tom Rini <tr...@konsulko.com> > >>>> --- > >>>> cmd/fdt.c | 34 ++++++++++++++++++++++++++++------ > >>>> 1 file changed, 28 insertions(+), 6 deletions(-) > >>> > >>> Can you please add docs and a test? > >> > >> I was expecting this kind of question ... there is no test for the FDT > >> command. > >> > >>> I am happy to do a starting point for a test if you like. > >> > >> You can implement the test for this while at it. > > > > I sent a starting point for you, both docs and test. > > Thank you. > > Do I understand your remark correctly that you're blocking this > particular patch from going in until there is a test ?
I'm not blocking anything, but turning it around the other way, how about having a crack at a test? You can try out 'ut fdt' to see the current tests (using the patches I sent). Regards, Simon