
Dear Community
I'd like to ask about one issue with generation of symbol offsets in binman [1].
In my case the CONFIG_FSPI_CONF_HEADER is defined.
Problem is with generated symbols [2] to point into ddr-1d-imem-fw/ddr-1d-dmem-fw/ddr-2d-imem-fw/ddr-2d-dmem-fw.
It looks like only symbols have extra offset of 0x1000 (the same as the first section introduces) - binaries for training memory are placed without this extra offset.
On the other hand - before this change: SHA1: 37e50627efacd8dae18b564e9d8886a033e181bc
The u-boot-spl-ddr.bin was a separate binman "entry" (i.e. not section) - so e.g. ddr-1d-dmem-fw {} had proper offsets (as this binary was also mangled into spl.bin with mkimage invocation).
Now the question - how to properly fix this issue?
I've tried to add pad-before = <0x1000>; to ddr-1d-imem-fw property hoping to "move" this binary itself by 0x1000. However with it the symbol of ddr-1d-dmem-fw is moved up as well.
Another option was to try alignment 'align-size' set to 0x1000 - effect is the same as described above.
In the documentation [3] - I've found that I could use "ProcessEntryContents()" for tweaking, but this seems to be not eligible (as all imx8mX boards, which are going to boot from fspi) are affected.
Maybe falling-back to 'multiple-images' [4] and generate the u-boot-spl-ddr.bin in that way is a proper solution?
Last but not least - this problem is not present when one boots from SD/eMMC as in this case the "fspi_conf_block" property is not present and everything starts with 0x0 offset.
Thanks in advance for your help.
Links:
[1] - https://source.denx.de/u-boot/u-boot/-/blob/master/arch/arm/dts/imx8mm-u-boo...
[2] - https://source.denx.de/u-boot/u-boot/-/blob/master/drivers/ddr/imx/phy/helpe...
[3] - https://github.com/ARM-software/u-boot/blob/master/tools/binman/README#L526
[4] - https://github.com/ARM-software/u-boot/blob/master/tools/binman/README#L371
Best regards,
Lukasz Majewski
--
DENX Software Engineering GmbH, Managing Director: Erika Unter HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lukma@denx.de