Building TX6/TXUL Series¶
Our layer provides a setup-environment
script that simplifies the setup for our machines.
To use the script, the name of the specific machine to be built for needs to be specified, as well as the desired graphical backend. The script sets up a
directory and the configuration files for the specified machine and backend. It also adds our layer to the bblayers.conf
file, and configures the sstate-cache for you.
There are different configurations you can choose from.
DISTRO
configurations:
DISTRO= |
Description |
---|---|
karo-minimal | Ka-Ro Linux Distro with minimal read-only rootfs |
karo-wayland | Ka-Ro Linux Distro with wayland backend |
karo-x11 | Ka-Ro Linux Distro with X11 support |
- Possible
MACHINE
configurations:
TXUL | TX6S | TX6U | TX6Q |
---|---|---|---|
i.MX6UL(L) single core Cortex A7 |
i.MX6S single core Coretex A9 |
i.MX6DL dual core Cortex A9 |
i.MX6Q(P) quad core Cortex A9 |
MACHINE= |
MACHINE= |
MACHINE= |
MACHINE= |
txul-5010 | tx6s-8034 | tx6u-8030 | tx6q-1030 |
txul-5011 | tx6s-8035 | tx6u-8033 | tx6q-1036 |
txul-8013 | tx6s-8134 | tx6u-8130 | tx6q-1130 |
tx6s-8135 | tx6u-8133 | tx6q-8037 | |
tx6q-8137 |
Use this command to setup your build directory (specify the distro, machine, and the build directory):
- General Example:
DISTRO=<distro> MACHINE=<machine> source setup-environment <build-dir>
When the script has run, your current directory should have changed to the <build-dir>
you chose before.
- Specific Example (e.g. TX6U-8033):
DISTRO=karo-minimal MACHINE=tx6u-8033 source setup-environment build-tx6u-8033
Building the Image¶
Note
The setup-environment provided by the Zeus release already sets up a SSTATE CACHE to speedup the build process.
For more about sstate caches see Introduction to sstate cache.
Here are (some of) the different images (and packages) that can be build:
Image | Description | DISTRO= (required) |
Provided by layer |
---|---|---|---|
Official Ka-Ro BSP images | |||
karo-image-minimal | Image with minimal read-only rootfs | karo-minimal | meta-karo-distro |
karo-image-base | Image with minimal rootfs and udev instead of mdev | karo-base | meta-karo-distro |
karo-image-weston | Image with basic weston desktop, graphics accelerated | karo-wayland | meta-karo-distro |
karo-image-qt5 | Image with basic weston desktop and QT5. To use it wit QT-Creator see Toolchain with QT Creator | karo-wayland | meta-karo-distro |
karo-image-x11 | Image with X11 support | karo-x11 | meta-karo-distro |
Ka-Ro packages images | |||
u-boot-karo | U-Boot flashable binary | N/A (any) | meta-karo |
linux-karo | Linux Kernel and specified .dtb files only | N/A (any) | meta-karo |
General Yocto / OE images | |||
core-image-minimal | See here @ OpenEmbedded Layer Index | N/A (any) | Poky |
OpenEmbedded Layer Index for Recipes
Examples
Build the kernel image with the following command inside your <build-dir>
.
bitbake linux-karo
Build the karo-image-minimal with the following command inside your <build-dir>
.
bitbake karo-image-minimal
Getting the SDK¶
To build the SDK of a certain image run inside your <build-dir>
:
bitbake <image> -c populate_sdk
Image Deployment¶
After a build is complete, the created image resides in the tmp/deploy/images/<machine>
sub-directory. An image is, for the most
part, specific to the machine set in the environment setup. Each image build creates a kernel, and an image type based
on the IMAGE_FSTYPES
defined in the machine configuration file.
The following files are created for Ka-Ro TX6/TXUL modules when running karo-image-minimal:
Filename | Content | Module Type |
---|---|---|
uImage-<version>-<machine> | Kernel uImage | any |
modules-<machine>.tgz | Kernel modules | any |
<image>-<machine>.tar.{bz2|gz} | RFS (bzip2/gzip) tar | any |
<image>-<machine>.ext4 | RFS ext4 filesystem image | eMMC |
<image>-<machine>.ubi | RFS UBI (Unsorted Block Images) | NAND |
<image>-<machine>.ubifs | RFS UBIFS (UBI File-System) | NAND |
*.dtb | Device Tree Blob | any |
Tip
To continue with these images use MFG-Tool or TFTP boot.
UUU is actually not supported for TX6/TXUL!
Tip
See what you can do with Yocto Zeus built Images at Zeus BSP. If you compiled karo-image-qt5
check out Toolchain with QT Creator.