
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 sjg@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: lukma@denx.de