Hi Michal, On Fri, 14 Aug 2020 at 07:28, Michal Simek <mon...@monstr.eu> wrote: > > Hi Simon, > > ne 19. 7. 2020 v 22:06 odesÃlatel Simon Glass <s...@chromium.org> napsal: > > > > This option is used to run arch-specific shell scripts which produce .its > > files which are used to produce FIT images. We already have binman which > > is designed to produce firmware images. It is more powerful and has tests. > > > > So this option should be deprecated and not used. Existing uses should be > > migrated. > > > > Mentions of this in code reviews over the last year or so do not seem to > > have resulted in action, and things are getting worse. > > > > So let's add a warning. > > > > Signed-off-by: Simon Glass <s...@chromium.org> > > Reviewed-by: Bin Meng <bmeng...@gmail.com> > > --- > > > > (no changes since v1) > > > > Makefile | 9 +++++++++ > > 1 file changed, 9 insertions(+) > > > > diff --git a/Makefile b/Makefile > > index f1b5be1882..d73c10a973 100644 > > --- a/Makefile > > +++ b/Makefile > > @@ -1148,6 +1148,13 @@ ifneq ($(CONFIG_DM_ETH),y) > > @echo >&2 "See doc/driver-model/migration.rst for more info." > > @echo >&2 "====================================================" > > endif > > +endif > > +ifneq ($(CONFIG_SPL_FIT_GENERATOR),) > > + @echo >&2 "===================== WARNING ======================" > > + @echo >&2 "This board uses CONFIG_SPL_FIT_GENERATOR. Please migrate" > > + @echo >&2 "to binman instead, to avoid the proliferation of" > > + @echo >&2 "arch-specific scripts with no tests." > > + @echo >&2 "====================================================" > > endif > > @# Check that this build does not use CONFIG options that we do not > > @# know about unless they are in Kconfig. All the existing CONFIG > > @@ -1345,6 +1352,8 @@ endif > > > > # Boards with more complex image requirements can provide an .its source > > file > > # or a generator script > > +# NOTE: Please do not use this. We are migrating away from Makefile rules > > to use > > +# binman instead. > > ifneq ($(CONFIG_SPL_FIT_SOURCE),"") > > U_BOOT_ITS := u-boot.its > > $(U_BOOT_ITS): $(subst ",,$(CONFIG_SPL_FIT_SOURCE)) > > -- > > 2.28.0.rc0.105.gf9edc3c819-goog > > > > I just got to this conversion and I am curious how that transition > should look like. > I found how FIT image is created which is fine but I didn't find any > reference on how to generate images based on CONFIG_OF_LIST. > If you look at arch/arm/mach-zynqmp/mkimage_fit_atf.sh you will see > that I loop over this entry and create multiple DT nodes and the same > amount of configurations to cover it. Is this supported by binman? > If yes, what's the syntax for it?
The easiest way is probably to create a new entry type, like zynq-fit. Then you can generate the DT using the sequence writer functions. See _ReadSubNodes() in fit.py for an example. You can perhaps have a template subnode and use that in a for loop to generate the nodes. > > I tried several configurations and we can use that for generating qspi > images and also images with different configurations to have them > ready > but first I need to be able to handle the case above. I was thinking of converting sunxi which has the same need, but it sounds like you are on the case. Let me know if you need help. Regards, Simon