Hi Jonas, On Thu, 19 Jan 2023 at 05:40, Jonas Karlman <jo...@kwiboo.se> wrote: > > Hi Simon, > > On 2023-01-18 20:42, Simon Glass wrote: > > Hi Jonas, > > > > On Tue, 17 Jan 2023 at 15:54, Jonas Karlman <jo...@kwiboo.se> wrote: > >> > >> Add support to indicate what alignment to use for the FIT and its > >> external data. Pass the alignment to mkimage via the -B flag. > >> > >> Signed-off-by: Jonas Karlman <jo...@kwiboo.se> > >> --- > >> tools/binman/btool/mkimage.py | 5 ++++- > >> tools/binman/etype/fit.py | 8 ++++++++ > >> 2 files changed, 12 insertions(+), 1 deletion(-) > > > > This looks good to me but please update docs at the top of fit.py, > > regenerate entries.rst and add a test to ftest.py here, as this > > causes a test-coverage failure: > > I will take a look and send a v2 series that includes tests, > updated entries.rst and is rebased on top of dm-pull-18jan23. > > > I have noticed that the generated FIT configuration node is not fully > matching the old script, it uses firmware = "u-boot" instead of "atf-1". > So TF-A is never initialized with the new FIT. > > I made a quick attempt of a fix using the the diff below. > > Now with binman: > firmware = "u-boot"; > loadables = "atf-1", "atf-2", ...; > > With old script: > firmware = "atf-1"; > loadables = "u-boot", "atf-2", ...; > > With the diff below: > firmware = "atf-1"; > loadables = "u-boot", "atf-1", "atf-2", ...; > > Should I send patches with something like this? Or do you have something else > in mind?
Yes please! > > Regards, > Jonas > > > diff --git a/arch/arm/dts/rockchip-u-boot.dtsi > b/arch/arm/dts/rockchip-u-boot.dtsi > index 1449657e0a..1e8333753e 100644 > --- a/arch/arm/dts/rockchip-u-boot.dtsi > +++ b/arch/arm/dts/rockchip-u-boot.dtsi > @@ -116,8 +116,8 @@ > @config-SEQ { > description = "NAME.dtb"; > fdt = "fdt-SEQ"; > - firmware = "u-boot"; > - fit,loadables; > + firmware = "atf-1"; > + fit,loadables = "u-boot"; > }; > }; > }; > diff --git a/tools/binman/etype/fit.py b/tools/binman/etype/fit.py > index 51b122962f..21ec9e5cc7 100644 > --- a/tools/binman/etype/fit.py > +++ b/tools/binman/etype/fit.py > @@ -525,7 +525,13 @@ class Entry_fit(Entry_section): > with fsw.add_node(node_name): > for pname, prop in node.props.items(): > if pname == 'fit,loadables': > - val = '\0'.join(self._loadables) + '\0' > + if type(prop.value) is str: > + val = [prop.value] > + elif type(prop.value) is list: > + val = prop.value > + else: > + val = [] > + val = '\0'.join(val + self._loadables) + '\0' > fsw.property('loadables', > val.encode('utf-8')) > elif pname == 'fit,operation': > pass > > > > > > > $ binman test -T > > ... > > tools/binman/etype/fit.py 224 1 99% > > tools/binman/btool/mkimage.py 23 1 96% > > > > Regards, > > Simon > Regards, Simon