Skip to content

Yocto Build U-Boot from source code

Toolchain Installation for Out of Yocto Builds

To install the toolchain, follow the Yocto Toolchain installation guide.

Build U-Boot Out of Yocto Tree

Obtain sources:

git clone https://github.com/varigit/uboot-imx.git -b imx_v2018.03_4.14.78_1.0.0_ga_var02
cd uboot-imx

Configure compilation environment:

source /opt/b2qt/3.0.4/environment-setup-cortexa7t2hf-neon-poky-linux-gnueabi

Cleanup everything:

make mrproper

Select one of the following configurations:

For booting from SD card/eMMC:
make mx6ul_var_dart_mmc_defconfig

For booting from NAND flash:
make mx6ul_var_dart_nand_defconfig

Build U-Boot:

make -j$(nproc)

Install the Built U-Boot on an SD Card

sudo dd if=SPL of=/dev/sdX bs=1K seek=1; sync
sudo dd if=u-boot.img of=/dev/sdX bs=1K seek=69; sync

(Replace /dev/sdX with the correct device)

If you want to use our recovery SD card to flash the built U-Boot to NAND flash/eMMC, then copy it to the appropriate location in the SD card:

sudo cp SPL /media/rootfs/opt/images/…
sudo cp u-boot.img /media/rootfs/opt/images/…

And eject the SD card gracefully from host machine.

Note: If you manually upgrade an existing U-Boot, and you have an old environment saved, it is a good idea to reset your environment to the new default.)

Update Your U-Boot Out of Yocto Tree

git pull