Dear Simon and Simon, > Am 05.12.2018 um 14:57 schrieb Simon Glass: > > This option has crept into use with some boards. Add a warning to > > try to prevent this. > > > > As an example: > > https://lists.denx.de/pipermail/u-boot/2017-September/304966.html > > We have just discussed this in another thread. There seem to be ~109 > defconfigs in the tree that enable OF_EMBED. > > I doubt all of them do this for fun, so we might want to collect the > reasons they do so. I do know two: > > - socfpga_stratix10_defconfig needs this to get a correct > u-boot-spl.hex > - I would need it to ensure in SPL, the DTB is in one block with the > other readonly parts. Without OF_EMBED, we have '.text', '.bss', DT.
Another use case is imx6: When I want to use SPL's embedded DTB for early init, with OF_SEPARATE I get fdt_blob = (ulong *)&__bss_end; ,which points me to 0x18200060, which is in DDR (and there is either garbage nor DDR is not initialized at all). The above looks like the __bss_end is for u-boot proper. The workaround (for now) is to have OF_EMBED, which assigns gd->fdt_blob = __dtb_dt_spl_begin [1], and this is a correct address. Hence, I'm wondering if shall I assign: gd->fdt_blob = __dtb_dt_spl_begin; in my early SPL code (and do not use fdt_setup() function at all in SPL) ? Moreover, defining board_fdt_blob_setup() for _each_ IMX6 board which would switch to DM_MMC in SPL seems like an no acceptable solution. [1] - ./spl/dts/dt-spl.dtb.S:3:.global __dtb_dt_spl_begin --> Looks like __dtb_dt_spl_begin is exactly for this purpose. > > Regards, > Simon > > > > > Signed-off-by: Simon Glass <s...@chromium.org> > > --- > > > > Makefile | 8 ++++++++ > > 1 file changed, 8 insertions(+) > > > > diff --git a/Makefile b/Makefile > > index 0d11ff97971..05896598fe3 100644 > > --- a/Makefile > > +++ b/Makefile > > @@ -947,6 +947,14 @@ ifeq > > ($(CONFIG_LIBATA)$(CONFIG_DM_SCSI)$(CONFIG_MVSATA_IDE),y) @echo > > "Failure to update by the deadline may result in board removal." > > @echo "See doc/driver-model/MIGRATION.txt for more info." @echo > > "====================================================" +endif > > +ifeq ($(CONFIG_OF_EMBED),y) > > + @echo "===================== WARNING > > ======================" > > + @echo "CONFIG_OF_EMBED is enabled. This option should only" > > + @echo "be used for debugging purposes. Please use" > > + @echo "CONFIG_OF_SEPARATE for boards in mainline." > > + @echo "See doc/README.fdt-control for more info." > > + @echo > > "====================================================" 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 > > _______________________________________________ > U-Boot mailing list > U-Boot@lists.denx.de > https://lists.denx.de/listinfo/u-boot Best regards, Lukasz Majewski -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email: lu...@denx.de
pgpdiAe2on9og.pgp
Description: OpenPGP digital signature
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot