Message ID | 20220801160610.2330151-3-foss+uboot@0leil.net |
---|---|
State | Superseded |
Delegated to: | Kever Yang |
Headers | show |
Series | migrate u-boot-rockchip.bin to binman and generate an image for SPI | expand |
Hi Quentin, On Mon, 1 Aug 2022 at 10:06, Quentin Schulz <foss+uboot@0leil.net> wrote: > > From: Quentin Schulz <quentin.schulz@theobroma-systems.com> > > mkimage entry currently creates a file whose name is derived from the > section name containing said entry. > > Let's allow the user to define a filename for the mkimage-generated > binary by using the 'filename' DT property. > > Cc: Quentin Schulz <foss+uboot@0leil.net> > Signed-off-by: Quentin Schulz <quentin.schulz@theobroma-systems.com> > --- > > added in v3 > > tools/binman/etype/mkimage.py | 7 +++++-- > 1 file changed, 5 insertions(+), 2 deletions(-) This does need a test (should be able to update the mkimage one). > > diff --git a/tools/binman/etype/mkimage.py b/tools/binman/etype/mkimage.py > index 52297c23ea..902c254425 100644 > --- a/tools/binman/etype/mkimage.py > +++ b/tools/binman/etype/mkimage.py > @@ -20,11 +20,13 @@ class Entry_mkimage(Entry): > datafiles to mkimage instead of creating a temporary file the result > of datafiles concatenation > - args: Other arguments to pass > + - filename: filename of output binary generated by mkimage > > The data passed to mkimage is collected from subnodes of the mkimage node, > e.g.:: > > mkimage { > + filename = "imximage.bin"; > args = "-n test -T imximage"; > > u-boot-spl { > @@ -33,7 +35,7 @@ class Entry_mkimage(Entry): > > This calls mkimage to create an imximage with u-boot-spl.bin as the input > file. The output from mkimage then becomes part of the image produced by > - binman. > + binman but also is written into imximage.bin file. > > To pass all datafiles untouched to mkimage:: > > @@ -70,6 +72,7 @@ class Entry_mkimage(Entry): > self._args = fdt_util.GetArgs(self._node, 'args') > self._multiple_data_files = fdt_util.GetBool(self._node, 'multiple-data-files') > self._mkimage_entries = OrderedDict() > + self._filename = fdt_util.GetString(self._node, 'filename') > self.align_default = None > self.ReadEntries() > > @@ -89,7 +92,7 @@ class Entry_mkimage(Entry): > self._mkimage_entries.values(), 'mkimage', fake_size) > if data is None: > return False > - output_fname = tools.get_output_filename('mkimage-out.%s' % uniq) > + output_fname = tools.get_output_filename(self._filename if self._filename else 'mkimage-out.%s' % uniq) Check <80cols? > if self.mkimage.run_cmd('-d', input_fname, *self._args, > output_fname) is not None: > self.SetContents(tools.read_file(output_fname)) > -- > 2.37.1 > Regards, SImon
diff --git a/tools/binman/etype/mkimage.py b/tools/binman/etype/mkimage.py index 52297c23ea..902c254425 100644 --- a/tools/binman/etype/mkimage.py +++ b/tools/binman/etype/mkimage.py @@ -20,11 +20,13 @@ class Entry_mkimage(Entry): datafiles to mkimage instead of creating a temporary file the result of datafiles concatenation - args: Other arguments to pass + - filename: filename of output binary generated by mkimage The data passed to mkimage is collected from subnodes of the mkimage node, e.g.:: mkimage { + filename = "imximage.bin"; args = "-n test -T imximage"; u-boot-spl { @@ -33,7 +35,7 @@ class Entry_mkimage(Entry): This calls mkimage to create an imximage with u-boot-spl.bin as the input file. The output from mkimage then becomes part of the image produced by - binman. + binman but also is written into imximage.bin file. To pass all datafiles untouched to mkimage:: @@ -70,6 +72,7 @@ class Entry_mkimage(Entry): self._args = fdt_util.GetArgs(self._node, 'args') self._multiple_data_files = fdt_util.GetBool(self._node, 'multiple-data-files') self._mkimage_entries = OrderedDict() + self._filename = fdt_util.GetString(self._node, 'filename') self.align_default = None self.ReadEntries() @@ -89,7 +92,7 @@ class Entry_mkimage(Entry): self._mkimage_entries.values(), 'mkimage', fake_size) if data is None: return False - output_fname = tools.get_output_filename('mkimage-out.%s' % uniq) + output_fname = tools.get_output_filename(self._filename if self._filename else 'mkimage-out.%s' % uniq) if self.mkimage.run_cmd('-d', input_fname, *self._args, output_fname) is not None: self.SetContents(tools.read_file(output_fname))