Yocto Build Release TI
This page is using the default release am62-yocto-dunfell-5.10.140_08.05.00.21-v1.0.
To view this page for a specific Variscite SoM and software release, please follow these steps:
- Visit variwiki.com
- Select your SoM
- Select the software release
Installing required packages
Please make sure your host PC is running Ubuntu 18.04/20.04/22.04 64-bit and is up to date:
$ sudo apt-get update && sudo apt-get dist-upgrade
Then, install the following packages:
$ sudo dpkg --add-architecture i386 $ sudo apt update && sudo apt install build-essential autoconf \ automake bison \ flex libssl-dev bc u-boot-tools \ python diffstat \ texinfo gawk chrpath dos2unix \ wget unzip socat doxygen libc6:i386 \ libncurses5:i386 libstdc++6:i386 \ libz1:i386 g++-multilib \ git python3-distutils python3-apt $ sudo dpkg-reconfigure dash
Install Toolchains to home directory
$ cd ~ $ wget && \ tar -Jxvf -C $HOME && \ wget && \ tar -Jxvf -C $HOME
Download Yocto and setup environment
Download the source code:
$ mkdir ~/var-ti-yocto && cd ~/var-ti-yocto $ git clone tisdk $ cd tisdk $ ./oe-layertool-setup.sh -f
Next, setup the environment. The above commands are only required for the very first build setup: whenever restarting a newer build session (from a different terminal or in a different time), you can skip the full setup and just run:
$ cd build $ . conf/setenv $ export TOOLCHAIN_PATH_ARMV7=$HOME/ && \ export TOOLCHAIN_PATH_ARMV8=$HOME/
Build GUI demo image
$ MACHINE=am62x-var-som bitbake var-default-image
Create a bootable SD card
The wic image fully supports booting from an SD Card. Use the command below to write it to an SD Card:
$ xzcat arago-tmp-external-arm-glibc/deploy/images/am62x-var-som/var-default-image-am62x-var-som.wic.xz | sudo dd of=/dev/sdX bs=1M && sync
Create a Recovery SD card
As mentioned above, the wic image only supports booting from an SD card. To flash an image to eMMC, Variscite provides an image var-recovery-sd-image, which inherits var-default-image and adds the following files needed for installing to eMMC:
/usr/bin/install_yocto.sh /usr/bin/echos.sh /opt/images/Yocto/ /opt/images/Yocto/boot /opt/images/Yocto/boot/u-boot.img /opt/images/Yocto/boot/tiboot3.bin /opt/images/Yocto/boot/wificfg /opt/images/Yocto/boot/tispl.bin /opt/images/Yocto/boot/uEnv.txt /opt/images/Yocto/rootfs.tar.xz
Build the image:
$ MACHINE=am62x-var-som bitbake var-recovery-sd-image
Write it to an SD Card:
$ xzcat arago-tmp-external-arm-glibc/deploy/images/am62x-var-som/var-recovery-sd-image-am62x-var-som.wic.xz | sudo dd of=/dev/sdX bs=1M && sync
Note: Some SD card duplicator machines do not support 64-bit filesystems. To build a recovery SD card image with 32-bit filesystems, add MKE2FS_NO_64="y" to conf/local.conf and rebuild the image:
$ echo 'KE2FS_NO_64="y"' >> conf/local.conf