kumquat-buildroot/board/freescale
Julien Olivain d130f0a837 board/freescale/common/imx: use nodtb variant in uboot images for 8M
In board/freescale/common/imx/imx8-bootloader-prepare.sh, when
invoking mkimage_fit_atf.sh, the U-Boot DTB is passed as parameter, to
be included in the FIT image. This parameter usually comes from
BR2_ROOTFS_POST_SCRIPT_ARGS config option. The variable
BL33=u-boot.bin set in the invocation uses the u-boot image which is
including its embedded DTB. This means the U-Boot DTB is included
twice.

The upstream script mkimage_fit_atf.sh plus its Buildroot patch are
meant to use by default the nodtb variant and use the DTB in a
separate image. See [1] and [2].

The U-Boot default DTB which will be included in u-boot.bin image is
selected with U-Boot CONFIG_DEFAULT_DEVICE_TREE, or DEVICE_TREE
variable when invoking "make". If one of those option is not aligned
to the BR2_ROOTFS_POST_SCRIPT_ARGS config option, it's possible the
two included U-Boot DTBs are different. If such case happens, the
built-in DTB is always used, regardless of the other one, selected
with BR2_ROOTFS_POST_SCRIPT_ARGS.

For example, this case happens for TechNexion Pico Pi i.MX8M and
i.MX8MMini. Since the U-Boot defconfig assumes the nodtb version will
be used, it does not set the default DTB. The u-boot.bin will include
the fsl-imx8mm-evk instead. Including the wrong board DTB breaks the
USB and UMS commands (and possibly others). Since those boards does
not have SD card slots, a recovery serial download is needed at every
update.

This patch make sure that only the separate U-Boot DTB will be
included in the FIT image by using the nodtb variant.

[1] https://source.codeaurora.org/external/imx/imx-mkimage/tree/iMX8M/mkimage_fit_atf.sh?h=rel_imx_4.14.98_2.0.0_ga#n35
[2] https://git.busybox.net/buildroot/tree/package/imx-mkimage/0001-add-support-for-overriding-bl32-and-bl33-not-only-bl.patch?h=2019.11#n42

Signed-off-by: Julien Olivain <juju@cotds.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2019-12-24 14:24:43 +01:00
..
common board/freescale/common/imx: use nodtb variant in uboot images for 8M 2019-12-24 14:24:43 +01:00
imx6-sabresd board/freescale/imx6-sabresd: Remove unneeded CONFIG_VIDEO_CODA fragment 2019-12-23 20:56:42 +01:00
imx6sabre configs/imx6sabre: Create distinct pre-processed mkimage config files 2018-11-23 10:42:42 +01:00
imx6slevk configs/imx6slevk: Add new defconfig 2017-11-22 21:37:28 +01:00
imx6sxsdb configs/imx6sx-sdb: Add new defconfig 2017-11-22 21:37:54 +01:00
imx6ulevk configs/imx6ulevk: Add new defconfig 2017-11-23 21:12:20 +01:00
imx7dsdb configs/freescale_imx7dsabresd: Apply upstream U-Boot fix 2018-12-21 14:58:35 +01:00
imx8mmevk configs/freescale_imx8mmevk: new defconfig 2019-06-17 21:22:47 +02:00
imx8mqevk board/freescale/imx8mqevk: fix typos in readme 2018-12-27 17:09:54 +01:00
imx8qxpmek configs/freescale_imx8qxpmek: new defconfig 2019-02-23 16:30:36 +01:00
imx23evk configs/imx23evk: Add support for imx23evk 2016-11-07 23:04:43 +01:00
imx25pdk freescale: Create the board/freescale/common/imx/ directory 2016-11-07 23:05:34 +01:00
imx28evk configs/imx28evk: Use the common mxs genimage script 2016-11-06 22:41:46 +01:00
imx51evk freescale: Create the board/freescale/common/imx/ directory 2016-11-07 23:05:34 +01:00
p1025twr configs/freescale_p1025twr_defconfig: new board 2018-03-11 22:19:39 +01:00
t1040_t2080 board/freescale: single T1xxx/2xxx readme.txt 2019-04-17 22:46:57 +02:00
warpboard warpboard: remove $(HOST_DIR)/usr reference from README 2017-07-05 16:06:23 +02:00