[Buildroot] [PATCH v2 1/1] board/freescale/common/imx: use nodtb variant in uboot images for 8M

Thomas Petazzoni thomas.petazzoni at bootlin.com
Tue Dec 24 13:34:01 UTC 2019

On Tue, 17 Dec 2019 21:37:12 +0100
Julien Olivain <juju at cotds.org> wrote:

> 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
> 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
> 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 at cotds.org>
> ---
> Changes v1 -> v2:
>   - Add more details in the commit log
> ---
>  board/freescale/common/imx/imx8-bootloader-prepare.sh | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

Many thanks for the extended commit log! Applied to master. Thanks!

Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering

More information about the buildroot mailing list