Template:Yocto Build Release IMX

From Variscite Wiki
Revision as of 22:19, 20 March 2023 by Nate (talk | contribs)
- Yocto based on FSL Community BSP with Linux release


Installing required packages

Please make sure your host PC is running Ubuntu Expression error: Unexpected >= operator. 64-bit and is up to date:

 $ sudo apt-get update && sudo apt-get dist-upgrade

Then, install the following packages:

 $ sudo apt-get install gawk wget git diffstat unzip texinfo gcc-multilib \
 build-essential chrpath socat cpio python python3 python3-pip python3-pexpect \
 xz-utils debianutils iputils-ping libsdl1.2-dev xterm libyaml-dev libssl-dev
 
 $ sudo apt-get install autoconf libtool libglib2.0-dev libarchive-dev \
 sed cvs subversion coreutils texi2html docbook-utils python-pysqlite2 \
 help2man make gcc g++ desktop-file-utils libgl1-mesa-dev libglu1-mesa-dev \
 mercurial automake groff curl lzop asciidoc u-boot-tools dos2unix mtd-utils pv \
 libncurses5 libncurses5-dev libncursesw5-dev libelf-dev zlib1g-dev bc rename \
 zstd libgnutls28-dev
 
 Expression error: Unexpected >= operator.


Note: Variscite provides Docker containers that can be used for a development environment as an alternative to using a virtual machine or a dedicated computer. To learn more, please see Variscite's Docker Build Environment guide.

Reference documentation

Download Yocto based on Freescale Community BSP

$ git config --global user.name "Your Name"
$ git config --global user.email "Your Email"

$ mkdir ~/bin (this step may not be needed if the bin folder already exists)
$ curl https://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
$ export PATH=~/bin:$PATH
$ mkdir 
$ cd 

Now, choose between downloading a release tag, and downloading the latest revision (recommended) and follow only one of the next two bullet sections, accordingly:

  • Download the latest revision (recommended)
$ repo init -u  -b 
$ repo sync -j$(nproc)


or

  • Download a release tag

Each release in https://github.com/varigit/variscite-bsp-platform/releases corresponds to a tag.
The tags are also listed in https://github.com/varigit/variscite-bsp-platform/tags
To specify a specific release/tag, run the following:

$ repo init -u https://github.com/varigit/variscite-bsp-platform.git -b refs/tags/TAG_NAME

For example:
$ repo init -u https://github.com/varigit/variscite-bsp-platform.git -b refs/tags/
$ repo sync -j$(nproc)

Setup and build Yocto

Supported images

The following images are provided by Variscite for evaluation purpose

  • fsl-image-gui: Default Variscite demo image with GUI and without any Qt content. This image recipe works on all backends for Frame Buffer, Wayland and XWayland and the content is optimized to fit 512MB NAND flash.
  • fsl-image-qt: Extends fsl-image-gui image with Qt support and various Qt samples for Frame Buffer, Wayland and XWayland backends.
Will result in image size greater than 512 MB, which will not fit into NAND flash. Use SD card or eMMC to test.

The following images are provided by FSL Community BSP:

  • fsl-image-machine-test: A console-only image that includes gstreamer packages and test and benchmark applications.
  • fsl-image-mfgtool-initramfs: Small image to be used with Manufacturing Tool (mfg-tool) in a production environment.

See the list of Yocto Project’s reference images in Yocto Project Reference Manual

Supported distros

The following distros can be used:

  • fsl-imx-x11: Distro for X11 without wayland. This distro include x11 feature and doesn’ has wayland support.
  • fsl-imx-fb: Distro for Framebuffer graphical backend. This distro doesn’t include X11 and wayland features.
  • fsl-imx-wayland: Distro for Wayland without X11. This distro includes wayland feature but doesn’t have x11 support.
  • fsl-imx-xwayland: Distro for Wayland with X11. This distro includes both wayland and X11 emulation features.

Note: Also standard Poky distros can be used


Build XWayland GUI demo image

 Expression error: Unexpected > operator. Expression error: Unexpected >= operator. Expression error: Unexpected >= operator.  
$ cd 
$ MACHINE= DISTRO=

The above command is only mandatory 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 
$ source setup-environment

Expression error: Unexpected < operator.
Optional steps: local.conf customization

launch bitbake:

Without Qt content:
$ bitbake fsl-image-gui

Or with Qt content:
$ bitbake fsl-image-qt


local.conf customization

Change the downloads directory

Create a /opt/yocto_downloads directory and set its permissions:

$ sudo mkdir /opt/yocto_downloads
$ sudo chmod 777 /opt/yocto_downloads/

Direct downloads to it, by replacing 'DL_DIR ?= "${BSPDIR}/downloads/"' with 'DL_DIR = "/opt/yocto_downloads/"' in conf/local.conf under your build directory:

$ sed -i 's/DL_DIR ?= "${BSPDIR}\/downloads/DL_DIR = "\/opt\/yocto_downloads/g' conf/local.conf

Add Qt creator and Eclipse debug support to your images

Expression error: Unexpected > operator.

Use systemd instead of SysV init

Append the following to the conf/local.conf file in your Yocto build directory, to use systemd instead of SysV init in your images:

DISTRO_FEATURES_append = " systemd"
DISTRO_FEATURES_BACKFILL_CONSIDERED_append = " sysvinit"
VIRTUAL-RUNTIME_init_manager = "systemd"
VIRTUAL-RUNTIME_initscripts = ""
IMX_DEFAULT_DISTRO_FEATURES_append = " systemd"

Create a read-only root file system

Append the following to the conf/local.conf file in your Yocto build directory, to create a read-only rootfs:

EXTRA_IMAGE_FEATURES += "read-only-rootfs"

Build Results

The resulting images are located in tmp/deploy/images/.

Yocto

Documentation

Kirkstone 4.0

  • Yocto Project Core - Kirkstone 4.0

Documentation is available from www.docs.yoctoproject.org

Hardknott 3.3

  • Yocto Project Core - Hardknott 3.3

Documentation is available from www.docs.yoctoproject.org

Dunfell 3.1

  • Yocto Project Core - Dunfell 3.1

Documentation is available from www.yoctoproject.org

Thud 2.6.2

  • Yocto Project Core - Thud 2.6.2

Documentation is available from www.yoctoproject.org

Sumo 2.5

  • Yocto Project Core - Sumo 2.5

Documentation is available from www.yoctoproject.org

Rocko 2.4.3

  • Yocto Project Core - Rocko 2.4.3

Documentation is available from www.yoctoproject.org

Rocko 2.4.1

  • Yocto Project Core - Rocko 2.4.1

Documentation is available from www.yoctoproject.org

Rocko 2.4

  • Yocto Project Core - Rocko 2.4

Documentation is available from www.yoctoproject.org

Pyro 2.3.1

  • Yocto Project Core - Pyro 2.3.1 (released on 07/21/2017)

Documentation is available from www.yoctoproject.org

Morty 2.2.1

  • Yocto Project Core - Morty 2.2.1 (released on 02/24/2017)

Documentation is available from www.yoctoproject.org

FSLC BSP 2.5

  • FSL Community BSP Release Notes 2.5 documentation

Documentation is available from http://freescale.github.io

FSLC BSP 2.4

  • FSL Community BSP Release Notes 2.4 documentation

Documentation is available from http://freescale.github.io

FSLC BSP 2.3

  • FSL Community BSP Release Notes 2.3 documentation

Documentation is available from http://freescale.github.io

FSLC BSP 2.2

  • FSL Community BSP Release Notes 2.2 documentation

Documentation is available from http://freescale.github.io

FSL BSP L4.9.88_2.0.0-ga

  • Kernel documentation from fsl-yocto-L4.9.88_2.0.0-ga release

Documentation is available for download from fsl-yocto-imx-4.9.88_2.0.0-docs

FSL BSP L4.9.11_1.0.0-ga

  • Kernel documentation from fsl-yocto-L4.9.11_1.0.0-ga release

Documentation is available for download from fsl-yocto-imx-4.9.11_1.0.0-docs

FSL BSP L4.1.15_2.0.0-ga

  • Kernel documentation from fsl-yocto-L4.1.15_2.0.0-ga release

Documentation is available for download from fsl-yocto-imx-4.1.15_2.0.0-docs


Scripts

Code::Blocks

TARGET_DIR="/home/root"
TARGET_IP="192.168.73.165"
TARGET_PORT="3000"
SSH_OPTIONS="-oStrictHostKeyChecking=no"


#!/bin/bash

readonly PROGRAM="$1"
PROGRAMNAME="$(basename $PROGRAM)"

. /home/user/bin/var-sdk.conf

echo "Deploying to target"

# prevent "Host key verification failed"
ssh-keygen -f "${HOME}/.ssh/known_hosts" -R "${TARGET_IP}"

# delete old binary
ssh ${SSH_OPTIONS} root@${TARGET_IP} "sh -c 'rm -rf ${TARGET_DIR}/${PROGRAMNAME}'"

# send the program to the target
scp ${PROGRAM} root@${TARGET_IP}:${TARGET_DIR}/${PROGRAMNAME}


#!/bin/bash

readonly PROGRAM="$1"
PROGRAMNAME="$(basename $PROGRAM)"

. /home/user/bin/var-sdk.conf

echo "Starting GDB Server on Target"

# kill gdbserver on target
ssh ${SSH_OPTIONS} root@${TARGET_IP} "sh -c '/usr/bin/killall -q gdbserver'"

# start gdbserver on target and fork
ssh ${SSH_OPTIONS} -t root@${TARGET_IP} "sh -c 'XDG_RUNTIME_DIR=/run/user/0 gdbserver localhost:${TARGET_PORT} ${TARGET_DIR}/${PROGRAMNAME}'" &


VAR-SOM-MX6

Build Results

Image Name
Description
fsl-image-gui-. This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
fsl-image-gui-_128kbpeb.ubi A complete UBI image containing a UBIFS volume, for writing to NAND flash with 128KiB PEB.
fsl-image-gui-_256kbpeb.ubi A complete UBI image containing a UBIFS volume, for writing to NAND flash with 256KiB PEB.
Linux kernel image, same binary for SD card/eMMC or NAND flash.
SPL built for SD card boot or eMMC boot.
SPL built for NAND flash.
U-Boot built for SD card boot or eMMC boot.
U-Boot built for NAND flash.
Device Tree Name
SOM type
Carrier Board type
LCD Type
Evaluation Kit name
uImage-imx6q-var-som-cap.dtb VAR-SOM-MX6_V2 (Quad / Dual) VAR-MX6CustomBoard Capacitive touch VAR-DVK-MX6_V2-PRO
VAR-STK-MX6_V2
uImage-imx6q-var-som-res.dtb VAR-SOM-MX6_V2 (Quad / Dual) VAR-MX6CustomBoard Resistive touch VAR-DVK-MX6_V2-PRO
VAR-STK-MX6_V2
uImage-imx6q-var-som-vsc.dtb VAR-SOM-MX6_V2 (Quad / Dual) VAR-SOLOCustomBoard Capacitive LVDS touch N/A
uImage-imx6dl-var-som-cap.dtb VAR-SOM-MX6_V2 (DualLite / Solo) VAR-MX6CustomBoard Capacitive touch N/A
uImage-imx6dl-var-som-res.dtb VAR-SOM-MX6_V2 (DualLite / Solo) VAR-MX6CustomBoard Resistive touch N/A
uImage-imx6dl-var-som-vsc.dtb VAR-SOM-MX6_V2 (DualLite / Solo) VAR-SOLOCustomBoard Capacitive LVDS touch N/A
uImage-imx6qp-var-som-cap.dtb VAR-SOM-MX6_V2 (QuadPlus / DualPlus) VAR-MX6CustomBoard Capacitive touch N/A
uImage-imx6qp-var-som-res.dtb VAR-SOM-MX6_V2 (QuadPlus / DualPlus) VAR-MX6CustomBoard Resistive touch N/A
uImage-imx6qp-var-som-vsc.dtb VAR-SOM-MX6_V2 (QuadPlus / DualPlus) VAR-SOLOCustomBoard Capacitive LVDS touch N/A
uImage-imx6dl-var-som-solo-cap.dtb VAR-SOM-SOLO / VAR-SOM-DUAL VAR-MX6CustomBoard Capacitive touch N/A
uImage-imx6dl-var-som-solo-res.dtb VAR-SOM-SOLO / VAR-SOM-DUAL VAR-MX6CustomBoard Resistive touch N/A
uImage-imx6dl-var-som-solo-vsc.dtb VAR-SOM-SOLO / VAR-SOM-DUAL VAR-SOLOCustomBoard Capacitive LVDS touch VAR-DVK-SOLO/DUAL
VAR-STK-SOLO/DUAL
uImage-imx6q-var-dart.dtb DART-MX6 VAR-DT6CustomBoard Capacitive LVDS touch VAR-DVK-DT6
VAR-STK-DT6


Device trees

Build individual device trees:

Build the device tree for VAR-SOM-MX6 Dualite/Solo on VAR-MX6CustomBoard with capacitive touchscreen:
$ make -j4 imx6dl-var-som-cap.dtb

Build the device tree for VAR-SOM-MX6 Dualite/Solo on VAR-MX6CustomBoard with resistive touchscreen:
$ make -j4 imx6dl-var-som-res.dtb

Build the device tree for VAR-SOM-MX6 Dualite/Solo on VAR-SOLOCustomBoard:
$ make -j4 imx6dl-var-som-vsc.dtb

Build the device tree for VAR-SOM-MX6 Quad/Dual on VAR-MX6CustomBoard with capacitive touchscreen:
$ make -j4 imx6q-var-som-cap.dtb

Build the device tree for VAR-SOM-MX6 Quad/Dual on VAR-MX6CustomBoard with resistive touchscreen:
$ make -j4 imx6q-var-som-res.dtb

Build the device tree for VAR-SOM-MX6 Quad/Dual on VAR-SOLOCustomBoard:
$ make -j4 imx6q-var-som-vsc.dtb

Build the device tree for VAR-SOM-MX6 QuadPlus/DualPlus on VAR-MX6CustomBoard with capacitive touchscreen:
$ make -j4 imx6qp-var-som-cap.dtb

Build the device tree for VAR-SOM-MX6 QuadPlus/DualPlus on VAR-MX6CustomBoard with resistive touchscreen:
$ make -j4 imx6qp-var-som-res.dtb

Build the device tree for VAR-SOM-MX6 QuadPlus/DualPlus on VAR-SOLOCustomBoard:
$ make -j4 imx6qp-var-som-vsc.dtb

Build the device tree for VAR-SOM-SOLO on VAR-MX6CustomBoard with capacitive touchscreen:
$ make -j4 imx6dl-var-som-solo-cap.dtb

Build the device tree for VAR-SOM-SOLO on VAR-MX6CustomBoard with resistive touchscreen:
$ make -j4 imx6dl-var-som-solo-res.dtb

Build the device tree for VAR-SOM-SOLO on VAR-SOLOCustomBoard:
$ make -j4 imx6dl-var-som-solo-vsc.dtb

Build the device tree for DART-MX6:
$ make -j4 imx6q-var-dart.dtb


Device trees with Symphony-Board

Build individual device trees:

Build the device tree for VAR-SOM-MX6 Dualite/Solo on VAR-MX6CustomBoard with capacitive touchscreen:
$ make -j4 imx6dl-var-som-cap.dtb

Build the device tree for VAR-SOM-MX6 Dualite/Solo on VAR-MX6CustomBoard with resistive touchscreen:
$ make -j4 imx6dl-var-som-res.dtb

Build the device tree for VAR-SOM-MX6 Dualite/Solo on Symphony-Board:
$ make -j4 imx6dl-var-som-symphony.dtb

Build the device tree for VAR-SOM-MX6 Dualite/Solo on VAR-SOLOCustomBoard:
$ make -j4 imx6dl-var-som-vsc.dtb

Build the device tree for VAR-SOM-MX6 Quad/Dual on VAR-MX6CustomBoard with capacitive touchscreen:
$ make -j4 imx6q-var-som-cap.dtb

Build the device tree for VAR-SOM-MX6 Quad/Dual on VAR-MX6CustomBoard with resistive touchscreen:
$ make -j4 imx6q-var-som-res.dtb

Build the device tree for VAR-SOM-MX6 Quad/Dual on Symphony-Board:
$ make -j4 imx6q-var-som-symphony.dtb

Build the device tree for VAR-SOM-MX6 Quad/Dual on VAR-SOLOCustomBoard:
$ make -j4 imx6q-var-som-vsc.dtb

Build the device tree for VAR-SOM-MX6 QuadPlus/DualPlus on VAR-MX6CustomBoard with capacitive touchscreen:
$ make -j4 imx6qp-var-som-cap.dtb

Build the device tree for VAR-SOM-MX6 QuadPlus/DualPlus on VAR-MX6CustomBoard with resistive touchscreen:
$ make -j4 imx6qp-var-som-res.dtb

Build the device tree for VAR-SOM-MX6 QuadPlus/DualPlus on Symphony-Board:
$ make -j4 imx6qp-var-som-symphony.dtb

Build the device tree for VAR-SOM-MX6 QuadPlus/DualPlus on VAR-SOLOCustomBoard:
$ make -j4 imx6qp-var-som-vsc.dtb

Build the device tree for VAR-SOM-SOLO on VAR-MX6CustomBoard with capacitive touchscreen:
$ make -j4 imx6dl-var-som-solo-cap.dtb

Build the device tree for VAR-SOM-SOLO on VAR-MX6CustomBoard with resistive touchscreen:
$ make -j4 imx6dl-var-som-solo-res.dtb

Build the device tree for VAR-SOM-SOLO on VAR-SOLOCustomBoard:
$ make -j4 imx6dl-var-som-solo-vsc.dtb

Build the device tree for VAR-SOM-SOLO on Symphony-Board:
$ make -j4 imx6dl-var-som-solo-symphony.dtb

Build the device tree for DART-MX6:
$ make -j4 imx6q-var-dart.dtb


SD card image file tree

/opt/images/
└── Yocto
    ├── SPL-nand
    ├── SPL-sd
    ├── imx6dl-var-som-cap.dtb
    ├── imx6dl-var-som-res.dtb
    ├── imx6dl-var-som-solo-cap.dtb
    ├── imx6dl-var-som-solo-res.dtb
    ├── imx6dl-var-som-solo-vsc.dtb
    ├── imx6dl-var-som-vsc.dtb
    ├── imx6q-var-dart.dtb
    ├── imx6q-var-som-cap.dtb
    ├── imx6q-var-som-res.dtb
    ├── imx6q-var-som-vsc.dtb
    ├── imx6qp-var-som-cap.dtb
    ├── imx6qp-var-som-res.dtb
    ├── imx6qp-var-som-vsc.dtb
    ├── rootfs.tar.gz
    ├── rootfs_128kbpeb.ubi
    ├── rootfs_256kbpeb.ubi
    ├── u-boot.img-nand
    ├── u-boot.img-sd
    └── uImage


SD card image file tree with Symphony-Board

/opt/images/
└── Yocto
    ├── SPL-nand
    ├── SPL-sd
    ├── imx6dl-var-som-cap.dtb
    ├── imx6dl-var-som-res.dtb
    ├── imx6dl-var-som-solo-cap.dtb
    ├── imx6dl-var-som-solo-res.dtb
    ├── imx6dl-var-som-solo-symphony.dtb
    ├── imx6dl-var-som-solo-vsc.dtb
    ├── imx6dl-var-som-vsc.dtb
    ├── imx6q-var-dart.dtb
    ├── imx6q-var-som-cap.dtb
    ├── imx6q-var-som-res.dtb
    ├── imx6q-var-som-symphony.dtb
    ├── imx6q-var-som-vsc.dtb
    ├── imx6qp-var-som-cap.dtb
    ├── imx6qp-var-som-res.dtb
    ├── imx6qp-var-som-symphony.dtb
    ├── imx6qp-var-som-vsc.dtb
    ├── rootfs.tar.gz
    ├── rootfs_128kbpeb.ubi
    ├── rootfs_256kbpeb.ubi
    ├── u-boot.img-nand
    ├── u-boot.img-sd
    └── uImage


Flash Recovery SD from GUI

Flash from GUI

VAR-SOM-MX6 Pyro Recovery.png

Click the appropriate button:

  • Install Yocto SOLOCB NAND: Flash Yocto on NAND flash, on VAR-SOLOCustomBoard
  • Install Yocto SOLOCB eMMC: Flash Yocto on eMMC, on VAR-SOLOCustomBoard
  • Install Yocto MX6CB Res NAND: Flash Yocto with Resistive touch panel support on NAND flash, on VAR-MX6CustomBoard
  • Install Yocto MX6CB Cap NAND: Flash Yocto with Capacitive touch panel support on NAND flash, on VAR-MX6CustomBoard
  • Install Yocto MX6CB Res eMMC: Flash Yocto with Resistive touch panel support on eMMC, on VAR-MX6CustomBoard
  • Install Yocto MX6CB Cap eMMC: Flash Yocto with Capacitive touch panel support on eMMC, on VAR-MX6CustomBoard
  • Install Yocto DART (eMMC): Flash Yocto on eMMC, on VAR-DT6CustomBoard


Flash from GUI

For this Yocto release, NXP/Vivante do no longer provide GPU accelerations for X11 native backend.

The default backend is now XWayland: Wayland accelerated backend with basic (not accelerated) X11 emulation.

Only "Flash from command line" is supported.


Setting the Boot Mode

Follow the instruction below according to the appropriate carrier board type:

MX6CustomBoard

Booting your MX6CustomBoard system from SD card requires pushing the middle button while powering up the system. See picture below.

Mx6 boot.jpg

To boot a board using an SD card, follow the steps below:

  • Power-off the board.
  • Insert the SD card into the SD/MMC slot of the carrier board (DVK)
  • Push the middle button (Boot Select) and hold
  • Power-up the board
  • Release the middle button (Boot Select) after system starts to boot.
  • The board will automatically boot into Linux from the SD card

SoloCustomBoard

Booting your system requires switching the relevant DIP switch to "Boot from MMC". See picture below.

Solo boot.jpg

To boot board with SD card, Follow the steps below:

  • Power-off the board.
  • Insert the SD card into the SD/MMC slot of the carrier board (DVK)
  • Switch the relevant DIP switch to "Boot from MMC"
  • Power-up board
  • The board will automatically boot into Linux from SD card

DT6CustomBoard

Booting your system requires switching the relevant DIP switch to "Boot from SD card". See picture below.

Dart boot.jpg

To boot board with SD card, Follow the steps below:

  • Power-off the board.
  • Insert the SD card into the SD/MMC slot of the carrier board (DVK)
  • Switch the relevant DIP switch to "Boot from SD card"
  • Power-up board
  • The board will automatically boot into Linux from SD card



DART-6UL

Build Results

Image Name
How to use
fsl-image-gui-.sdcard This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
fsl-image-gui-.ubi A complete UBI image containing a UBIFS volume, for writing to NAND flash.
Linux kernel image, same binary for SD card/eMMC or NAND flash.
SPL built for SD card boot or eMMC boot.
SPL built for NAND flash.
U-Boot built for SD card boot or eMMC boot.
U-Boot built for NAND flash.
File Name Description
zImage-imx6ul-var-dart-emmc_wifi.dtb Device tree blob for DART-6UL with eMMC & WI-FI enabled. (SD card & NAND disabled)
zImage-imx6ul-var-dart-nand_wifi.dtb Device tree blob for DART-6UL with NAND flash & WI-FI enabled. (SD card & eMMC disabled)
zImage-imx6ul-var-dart-sd_emmc.dtb Device tree blob for DART-6UL with SD card & eMMC enabled (WIFI & NAND disabled)
zImage-imx6ul-var-dart-sd_nand.dtb Device tree blob for DART-6UL with SD card & NAND flash enabled (WIFI & eMMC disabled)
zImage-imx6ull-var-dart-emmc_wifi.dtb Device tree blob for DART-6ULL with eMMC & WI-FI enabled. (SD card & NAND disabled)
zImage-imx6ull-var-dart-nand_wifi.dtb Device tree blob for DART-6ULL with NAND flash & WI-FI enabled. (SD card & eMMC disabled)
zImage-imx6ull-var-dart-sd_emmc.dtb Device tree blob for DART-6ULL with SD card & eMMC enabled (WIFI & NAND disabled)
zImage-imx6ull-var-dart-sd_nand.dtb Device tree blob for DART-6ULL with SD card & NAND flash enabled (WIFI & eMMC disabled)


Image Name
How to use
fsl-image-gui-. This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
fsl-image-gui-_128kbpeb.ubi A complete UBI image containing a UBIFS volume, for writing to NAND flash with 128KiB PEB
fsl-image-gui-_256kbpeb.ubi A complete UBI image containing a UBIFS volume, for writing to NAND flash with 256KiB PEB
Linux kernel image, same binary for SD card/eMMC or NAND flash.
SPL built for SD card boot or eMMC boot.
SPL built for NAND flash.
U-Boot built for SD card boot or eMMC boot.
U-Boot built for NAND flash.
File Name Description
zImage-imx6ul-var-dart-emmc_wifi.dtb Device tree blob for DART-6UL with eMMC & WI-FI enabled. (SD card & NAND disabled)
zImage-imx6ul-var-dart-nand_wifi.dtb Device tree blob for DART-6UL with NAND flash & WI-FI enabled. (SD card & eMMC disabled)
zImage-imx6ul-var-dart-5g-emmc_wifi.dtb Device tree blob for DART-6UL-5G with eMMC & WI-FI enabled. (SD card & NAND disabled)
zImage-imx6ul-var-dart-5g-nand_wifi.dtb Device tree blob for DART-6UL-5G with NAND flash & WI-FI enabled. (SD card & eMMC disabled)
zImage-imx6ul-var-dart-sd_emmc.dtb Device tree blob for DART-6UL with SD card & eMMC enabled (WIFI & NAND disabled)
zImage-imx6ul-var-dart-sd_nand.dtb Device tree blob for DART-6UL with SD card & NAND flash enabled (WIFI & eMMC disabled)
zImage-imx6ull-var-dart-emmc_wifi.dtb Device tree blob for DART-6ULL with eMMC & WI-FI enabled. (SD card & NAND disabled)
zImage-imx6ull-var-dart-nand_wifi.dtb Device tree blob for DART-6ULL with NAND flash & WI-FI enabled. (SD card & eMMC disabled)
zImage-imx6ull-var-dart-5g-emmc_wifi.dtb Device tree blob for DART-6ULL-5G with eMMC & WI-FI enabled. (SD card & NAND disabled)
zImage-imx6ull-var-dart-5g-nand_wifi.dtb Device tree blob for DART-6ULL-5G with NAND flash & WI-FI enabled. (SD card & eMMC disabled)
zImage-imx6ull-var-dart-sd_emmc.dtb Device tree blob for DART-6ULL with SD card & eMMC enabled (WIFI & NAND disabled)
zImage-imx6ull-var-dart-sd_nand.dtb Device tree blob for DART-6ULL with SD card & NAND flash enabled (WIFI & eMMC disabled)


Image Name
How to use
fsl-image-gui-. This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
fsl-image-gui-_128kbpeb.ubi A complete UBI image containing a UBIFS volume, for writing to NAND flash with 128KiB PEB
fsl-image-gui-_256kbpeb.ubi A complete UBI image containing a UBIFS volume, for writing to NAND flash with 256KiB PEB
Linux kernel image, same binary for SD card/eMMC or NAND flash.
SPL built for SD card boot or eMMC boot.
SPL built for NAND flash.
U-Boot built for SD card boot or eMMC boot.
U-Boot built for NAND flash.
File Name Description
imx6ull-var-dart-6ulcustomboard-emmc-sd-card.dtb Device tree blob for DART-6UL with i.MX6ULL SOC, eMMC & SD card enabled. (NAND flash & WiFi disabled)
imx6ull-var-dart-6ulcustomboard-emmc-wifi.dtb Device tree blob for DART-6UL with i.MX6ULL SOC, eMMC & WiFi enabled. (NAND flash & SD card disabled)
imx6ull-var-dart-6ulcustomboard-nand-sd-card.dtb Device tree blob for DART-6UL with i.MX6ULL SOC, NAND flash & SD card enabled. (eMMC & WiFi disabled)
imx6ull-var-dart-6ulcustomboard-nand-wifi.dtb Device tree blob for DART-6UL with i.MX6ULL SOC, NAND flash & WiFi enabled. (eMMC & SD card disabled)
imx6ul-var-dart-6ulcustomboard-emmc-sd-card.dtb Device tree blob for DART-6UL with i.MX6UL SOC, eMMC & SD card enabled. (NAND flash & WiFi disabled)
imx6ul-var-dart-6ulcustomboard-emmc-wifi.dtb Device tree blob for DART-6UL with i.MX6UL SOC, eMMC & WiFi enabled. (NAND flash & SD card disabled)
imx6ul-var-dart-6ulcustomboard-nand-sd-card.dtb Device tree blob for DART-6UL with i.MX6UL SOC, NAND flash & SD card enabled. (eMMC & WiFi disabled)
imx6ul-var-dart-6ulcustomboard-nand-wifi.dtb Device tree blob for DART-6UL with i.MX6UL SOC, NAND flash & WiFi enabled. (eMMC & SD card disabled)
imx6ulz-var-dart-6ulcustomboard-emmc-sd-card.dtb Device tree blob for DART-6UL with i.MX6ULZ SOC, eMMC & SD card enabled. (NAND flash & WiFi disabled)
imx6ulz-var-dart-6ulcustomboard-emmc-wifi.dtb Device tree blob for DART-6UL with i.MX6ULZ SOC, eMMC & WiFi enabled. (NAND flash & SD card disabled)
imx6ulz-var-dart-6ulcustomboard-nand-sd-card.dtb Device tree blob for DART-6UL with i.MX6ULZ SOC, NAND flash & SD card enabled. (eMMC & WiFi disabled)
imx6ulz-var-dart-6ulcustomboard-nand-wifi.dtb Device tree blob for DART-6UL with i.MX6ULZ SOC, NAND flash & WiFi enabled. (eMMC & SD card disabled)
imx6ull-var-som-concerto-board-emmc-sd-card.dtb Device tree blob for VAR-SOM-6UL with i.MX6ULL SOC, eMMC & SD card enabled. (NAND flash & WiFi disabled)
imx6ull-var-som-concerto-board-emmc-wifi.dtb Device tree blob for VAR-SOM-6UL with i.MX6ULL SOC, eMMC & WiFi enabled. (NAND flash & SD card disabled)
imx6ull-var-som-concerto-board-nand-sd-card.dtb Device tree blob for VAR-SOM-6UL with i.MX6ULL SOC, NAND flash & SD card enabled. (eMMC & WiFi disabled)
imx6ull-var-som-concerto-board-nand-wifi.dtb Device tree blob for VAR-SOM-6UL with i.MX6ULL SOC, NAND flash & WiFi enabled. (eMMC & SD card disabled)
imx6ul-var-som-concerto-board-emmc-sd-card.dtb Device tree blob for VAR-SOM-6UL with i.MX6UL SOC, eMMC & SD card enabled. (NAND flash & WiFi disabled)
imx6ul-var-som-concerto-board-emmc-wifi.dtb Device tree blob for VAR-SOM-6UL with i.MX6UL SOC, eMMC & WiFi enabled. (NAND flash & SD card disabled)
imx6ul-var-som-concerto-board-nand-sd-card.dtb Device tree blob for VAR-SOM-6UL with i.MX6UL SOC, NAND flash & SD card enabled. (eMMC & WiFi disabled)
imx6ul-var-som-concerto-board-nand-wifi.dtb Device tree blob for VAR-SOM-6UL with i.MX6UL SOC, NAND flash & WiFi enabled. (eMMC & SD card disabled)
imx6ulz-var-som-concerto-board-emmc-sd-card.dtb Device tree blob for VAR-SOM-6UL with i.MX6ULZ SOC, eMMC & SD card enabled. (NAND flash & WiFi disabled)
imx6ulz-var-som-concerto-board-emmc-wifi.dtb Device tree blob for VAR-SOM-6UL with i.MX6ULZ SOC, eMMC & WiFi enabled. (NAND flash & SD card disabled)
imx6ulz-var-som-concerto-board-nand-sd-card.dtb Device tree blob for VAR-SOM-6UL with i.MX6ULZ SOC, NAND flash & SD card enabled. (eMMC & WiFi disabled)
imx6ulz-var-som-concerto-board-nand-wifi.dtb Device tree blob for VAR-SOM-6UL with i.MX6ULZ SOC, NAND flash & WiFi enabled. (eMMC & SD card disabled)


Image Name
How to use
fsl-image-gui-. This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
fsl-image-gui-_128kbpeb.ubi A complete UBI image containing a UBIFS volume, for writing to NAND flash with 128KiB PEB
fsl-image-gui-_256kbpeb.ubi A complete UBI image containing a UBIFS volume, for writing to NAND flash with 256KiB PEB
Linux kernel image, same binary for SD card/eMMC or NAND flash.
SPL built for SD card boot or eMMC boot.
SPL built for NAND flash.
U-Boot built for SD card boot or eMMC boot.
U-Boot built for NAND flash.
File Name Description
imx6ull-var-dart-6ulcustomboard-emmc-sd-card.dtb Device tree blob for DART-6UL with i.MX6ULL SOC, eMMC & SD card enabled. (NAND flash & WiFi disabled)
imx6ull-var-dart-6ulcustomboard-emmc-wifi.dtb Device tree blob for DART-6UL with i.MX6ULL SOC, eMMC & WiFi enabled. (NAND flash & SD card disabled)
imx6ull-var-dart-6ulcustomboard-nand-sd-card.dtb Device tree blob for DART-6UL with i.MX6ULL SOC, NAND flash & SD card enabled. (eMMC & WiFi disabled)
imx6ull-var-dart-6ulcustomboard-nand-wifi.dtb Device tree blob for DART-6UL with i.MX6ULL SOC, NAND flash & WiFi enabled. (eMMC & SD card disabled)
imx6ul-var-dart-6ulcustomboard-emmc-sd-card.dtb Device tree blob for DART-6UL with i.MX6UL SOC, eMMC & SD card enabled. (NAND flash & WiFi disabled)
imx6ul-var-dart-6ulcustomboard-emmc-wifi.dtb Device tree blob for DART-6UL with i.MX6UL SOC, eMMC & WiFi enabled. (NAND flash & SD card disabled)
imx6ul-var-dart-6ulcustomboard-nand-sd-card.dtb Device tree blob for DART-6UL with i.MX6UL SOC, NAND flash & SD card enabled. (eMMC & WiFi disabled)
imx6ul-var-dart-6ulcustomboard-nand-wifi.dtb Device tree blob for DART-6UL with i.MX6UL SOC, NAND flash & WiFi enabled. (eMMC & SD card disabled)
imx6ulz-var-dart-6ulcustomboard-emmc-sd-card.dtb Device tree blob for DART-6UL with i.MX6ULZ SOC, eMMC & SD card enabled. (NAND flash & WiFi disabled)
imx6ulz-var-dart-6ulcustomboard-emmc-wifi.dtb Device tree blob for DART-6UL with i.MX6ULZ SOC, eMMC & WiFi enabled. (NAND flash & SD card disabled)
imx6ulz-var-dart-6ulcustomboard-nand-sd-card.dtb Device tree blob for DART-6UL with i.MX6ULZ SOC, NAND flash & SD card enabled. (eMMC & WiFi disabled)
imx6ulz-var-dart-6ulcustomboard-nand-wifi.dtb Device tree blob for DART-6UL with i.MX6ULZ SOC, NAND flash & WiFi enabled. (eMMC & SD card disabled)
imx6ull-var-som-concerto-board-emmc-sd-card.dtb Device tree blob for VAR-SOM-6UL on Concerto board with i.MX6ULL SOC, eMMC & SD card enabled. (NAND flash & WiFi disabled)
imx6ull-var-som-concerto-board-emmc-wifi.dtb Device tree blob for VAR-SOM-6UL on Concerto board with i.MX6ULL SOC, eMMC & WiFi enabled. (NAND flash & SD card disabled)
imx6ull-var-som-concerto-board-nand-sd-card.dtb Device tree blob for VAR-SOM-6UL on Concerto board with i.MX6ULL SOC, NAND flash & SD card enabled. (eMMC & WiFi disabled)
imx6ull-var-som-concerto-board-nand-wifi.dtb Device tree blob for VAR-SOM-6UL on Concerto board with i.MX6ULL SOC, NAND flash & WiFi enabled. (eMMC & SD card disabled)
imx6ul-var-som-concerto-board-emmc-sd-card.dtb Device tree blob for VAR-SOM-6UL on Concerto board with i.MX6UL SOC, eMMC & SD card enabled. (NAND flash & WiFi disabled)
imx6ul-var-som-concerto-board-emmc-wifi.dtb Device tree blob for VAR-SOM-6UL on Concerto board with i.MX6UL SOC, eMMC & WiFi enabled. (NAND flash & SD card disabled)
imx6ul-var-som-concerto-board-nand-sd-card.dtb Device tree blob for VAR-SOM-6UL on Concerto board with i.MX6UL SOC, NAND flash & SD card enabled. (eMMC & WiFi disabled)
imx6ul-var-som-concerto-board-nand-wifi.dtb Device tree blob for VAR-SOM-6UL on Concerto board with i.MX6UL SOC, NAND flash & WiFi enabled. (eMMC & SD card disabled)
imx6ulz-var-som-concerto-board-emmc-sd-card.dtb Device tree blob for VAR-SOM-6UL on Concerto board with i.MX6ULZ SOC, eMMC & SD card enabled. (NAND flash & WiFi disabled)
imx6ulz-var-som-concerto-board-emmc-wifi.dtb Device tree blob for VAR-SOM-6UL on Concerto board with i.MX6ULZ SOC, eMMC & WiFi enabled. (NAND flash & SD card disabled)
imx6ulz-var-som-concerto-board-nand-sd-card.dtb Device tree blob for VAR-SOM-6UL on Concerto board with i.MX6ULZ SOC, NAND flash & SD card enabled. (eMMC & WiFi disabled)
imx6ulz-var-som-concerto-board-nand-wifi.dtb Device tree blob for VAR-SOM-6UL on Concerto board with i.MX6ULZ SOC, NAND flash & WiFi enabled. (eMMC & SD card disabled)
imx6ull-var-som-symphony-board-emmc-sd-card.dtb Device tree blob for VAR-SOM-6UL on Symphony board with i.MX6ULL SOC, eMMC & SD card enabled. (NAND flash & WiFi disabled)
imx6ull-var-som-symphony-board-emmc-wifi.dtb Device tree blob for VAR-SOM-6UL on Symphony board with i.MX6ULL SOC, eMMC & WiFi enabled. (NAND flash & SD card disabled)
imx6ull-var-som-symphony-board-nand-sd-card.dtb Device tree blob for VAR-SOM-6UL on Symphony board with i.MX6ULL SOC, NAND flash & SD card enabled. (eMMC & WiFi disabled)
imx6ull-var-som-symphony-board-nand-wifi.dtb Device tree blob for VAR-SOM-6UL on Symphony board with i.MX6ULL SOC, NAND flash & WiFi enabled. (eMMC & SD card disabled)
imx6ul-var-som-symphony-board-emmc-sd-card.dtb Device tree blob for VAR-SOM-6UL on Symphony board with i.MX6UL SOC, eMMC & SD card enabled. (NAND flash & WiFi disabled)
imx6ul-var-som-symphony-board-emmc-wifi.dtb Device tree blob for VAR-SOM-6UL on Symphony board with i.MX6UL SOC, eMMC & WiFi enabled. (NAND flash & SD card disabled)
imx6ul-var-som-symphony-board-nand-sd-card.dtb Device tree blob for VAR-SOM-6UL on Symphony board with i.MX6UL SOC, NAND flash & SD card enabled. (eMMC & WiFi disabled)
imx6ul-var-som-symphony-board-nand-wifi.dtb Device tree blob for VAR-SOM-6UL on Symphony board with i.MX6UL SOC, NAND flash & WiFi enabled. (eMMC & SD card disabled)
imx6ulz-var-som-symphony-board-emmc-sd-card.dtb Device tree blob for VAR-SOM-6UL on Symphony board with i.MX6ULZ SOC, eMMC & SD card enabled. (NAND flash & WiFi disabled)
imx6ulz-var-som-symphony-board-emmc-wifi.dtb Device tree blob for VAR-SOM-6UL on Symphony board with i.MX6ULZ SOC, eMMC & WiFi enabled. (NAND flash & SD card disabled)
imx6ulz-var-som-symphony-board-nand-sd-card.dtb Device tree blob for VAR-SOM-6UL on Symphony board with i.MX6ULZ SOC, NAND flash & SD card enabled. (eMMC & WiFi disabled)
imx6ulz-var-som-symphony-board-nand-wifi.dtb Device tree blob for VAR-SOM-6UL on Symphony board with i.MX6ULZ SOC, NAND flash & WiFi enabled. (eMMC & SD card disabled)


Device tree

Build only the device tree for DART-6UL with i.MX6UL SOC, eMMC and WiFi:
$ make -j4 imx6ul-var-dart-emmc_wifi.dtb

Build only the device tree for DART-6UL with i.MX6UL SOC, eMMC and SD card:
$ make -j4 imx6ul-var-dart-sd_emmc.dtb

Build only the device tree for DART-6UL with i.MX6UL SOC, NAND flash and WiFi:
$ make -j4 imx6ul-var-dart-nand_wifi.dtb

Build only the device tree for DART-6UL with i.MX6UL SOC, NAND flash and SD card:
$ make -j4 imx6ul-var-dart-sd_nand.dtb

Build only the device tree for DART-6UL with i.MX6ULL SOC, eMMC and WiFi:
$ make -j4 imx6ull-var-dart-emmc_wifi.dtb

Build only the device tree for DART-6UL with i.MX6ULL SOC, eMMC and SD card:
$ make -j4 imx6ull-var-dart-sd_emmc.dtb

Build only the device tree for DART-6UL with i.MX6ULL SOC, NAND flash and WiFi:
$ make -j4 imx6ull-var-dart-nand_wifi.dtb

Build only the device tree for DART-6UL with i.MX6ULL SOC, NAND flash and SD card:
$ make -j4 imx6ull-var-dart-sd_nand.dtb


Build only the device tree for DART-6UL with i.MX6UL SOC, eMMC and WiFi:
$ make -j4 imx6ul-var-dart-emmc_wifi.dtb

Build only the device tree for DART-6UL-5G with i.MX6UL SOC, eMMC and WiFi:
$ make -j4 imx6ul-var-dart-5g-emmc_wifi.dtb

Build only the device tree for DART-6UL with i.MX6UL SOC, eMMC and SD card:
$ make -j4 imx6ul-var-dart-sd_emmc.dtb

Build only the device tree for DART-6UL with i.MX6UL SOC, NAND flash and WiFi:
$ make -j4 imx6ul-var-dart-nand_wifi.dtb

Build only the device tree for DART-6UL-5G with i.MX6UL SOC, NAND flash and WiFi:
$ make -j4 imx6ul-var-dart-5g-nand_wifi.dtb

Build only the device tree for DART-6UL with i.MX6UL SOC, NAND flash and SD card:
$ make -j4 imx6ul-var-dart-sd_nand.dtb

Build only the device tree for DART-6UL with i.MX6ULL SOC, eMMC and WiFi:
$ make -j4 imx6ull-var-dart-emmc_wifi.dtb

Build only the device tree for DART-6UL with i.MX6ULL SOC, eMMC and SD card:
$ make -j4 imx6ull-var-dart-sd_emmc.dtb

Build only the device tree for DART-6UL-5G with i.MX6ULL SOC, eMMC and WiFi:
$ make -j4 imx6ull-var-dart-5g-emmc_wifi.dtb

Build only the device tree for DART-6UL with i.MX6ULL SOC, NAND flash and WiFi:
$ make -j4 imx6ull-var-dart-nand_wifi.dtb

Build only the device tree for DART-6UL-5G with i.MX6ULL SOC, NAND flash and WiFi:
$ make -j4 imx6ull-var-dart-5g-nand_wifi.dtb

Build only the device tree for DART-6UL with i.MX6ULL SOC, NAND flash and SD card:
$ make -j4 imx6ull-var-dart-sd_nand.dtb


Build only the device tree for DART-6UL with i.MX6ULL SOC, eMMC and SD card:
$ make -j4 imx6ull-var-dart-6ulcustomboard-emmc-sd-card.dtb

Build only the device tree for DART-6UL with i.MX6ULL SOC, eMMC and WiFi:
$ make -j4 imx6ull-var-dart-6ulcustomboard-emmc-wifi.dtb

Build only the device tree for DART-6UL with i.MX6ULL SOC, NAND flash and SD card:
$ make -j4 imx6ull-var-dart-6ulcustomboard-nand-sd-card.dtb

Build only the device tree for DART-6UL with i.MX6ULL SOC, NAND flash and WiFi:
$ make -j4 imx6ull-var-dart-6ulcustomboard-nand-wifi.dtb

Build only the device tree for DART-6UL with i.MX6UL SOC, eMMC and SD card:
$ make -j4 imx6ul-var-dart-6ulcustomboard-emmc-sd-card.dtb

Build only the device tree for DART-6UL with i.MX6UL SOC, eMMC and WiFi:
$ make -j4 imx6ul-var-dart-6ulcustomboard-emmc-wifi.dtb

Build only the device tree for DART-6UL with i.MX6UL SOC, NAND flash and SD card:
$ make -j4 imx6ul-var-dart-6ulcustomboard-nand-sd-card.dtb

Build only the device tree for DART-6UL with i.MX6UL SOC, NAND flash and WiFi:
$ make -j4 imx6ul-var-dart-6ulcustomboard-nand-wifi.dtb

Build only the device tree for DART-6UL with i.MX6ULZ SOC, eMMC and SD card:
$ make -j4 imx6ulz-var-dart-6ulcustomboard-emmc-sd-card.dtb

Build only the device tree for DART-6UL with i.MX6ULZ SOC, eMMC and WiFi:
$ make -j4 imx6ulz-var-dart-6ulcustomboard-emmc-wifi.dtb

Build only the device tree for DART-6UL with i.MX6ULZ SOC, NAND flash and SD card:
$ make -j4 imx6ulz-var-dart-6ulcustomboard-nand-sd-card.dtb

Build only the device tree for DART-6UL with i.MX6ULZ SOC, NAND flash and WiFi:
$ make -j4 imx6ulz-var-dart-6ulcustomboard-nand-wifi.dtb

Build only the device tree for VAR-SOM-6UL with i.MX6ULL SOC, eMMC and SD card:
$ make -j4 imx6ull-var-som-concerto-board-emmc-sd-card.dtb

Build only the device tree for VAR-SOM-6UL with i.MX6ULL SOC, eMMC and WiFi:
$ make -j4 imx6ull-var-som-concerto-board-emmc-wifi.dtb

Build only the device tree for VAR-SOM-6UL with i.MX6ULL SOC, NAND flash and SD card:
$ make -j4 imx6ull-var-som-concerto-board-nand-sd-card.dtb

Build only the device tree for VAR-SOM-6UL with i.MX6ULL SOC, NAND flash and WiFi:
$ make -j4 imx6ull-var-som-concerto-board-nand-wifi.dtb

Build only the device tree for VAR-SOM-6UL with i.MX6UL SOC, eMMC and SD card:
$ make -j4 imx6ul-var-som-concerto-board-emmc-sd-card.dtb

Build only the device tree for VAR-SOM-6UL with i.MX6UL SOC, eMMC and WiFi:
$ make -j4 imx6ul-var-som-concerto-board-emmc-wifi.dtb

Build only the device tree for VAR-SOM-6UL with i.MX6UL SOC, NAND flash and SD card:
$ make -j4 imx6ul-var-som-concerto-board-nand-sd-card.dtb

Build only the device tree for VAR-SOM-6UL with i.MX6UL SOC, NAND flash and WiFi:
$ make -j4 imx6ul-var-som-concerto-board-nand-wifi.dtb

Build only the device tree for VAR-SOM-6UL with i.MX6ULZ SOC, eMMC and SD card:
$ make -j4 imx6ulz-var-som-concerto-board-emmc-sd-card.dtb

Build only the device tree for VAR-SOM-6UL with i.MX6ULZ SOC, eMMC and WiFi:
$ make -j4 imx6ulz-var-som-concerto-board-emmc-wifi.dtb

Build only the device tree for VAR-SOM-6UL with i.MX6ULZ SOC, NAND flash and SD card:
$ make -j4 imx6ulz-var-som-concerto-board-nand-sd-card.dtb

Build only the device tree for VAR-SOM-6UL with i.MX6ULZ SOC, NAND flash and WiFi:
$ make -j4 imx6ulz-var-som-concerto-board-nand-wifi.dtb


Build only the device tree for DART-6UL with i.MX6ULL SOC, eMMC and SD card:
$ make -j4 imx6ull-var-dart-6ulcustomboard-emmc-sd-card.dtb

Build only the device tree for DART-6UL with i.MX6ULL SOC, eMMC and WiFi:
$ make -j4 imx6ull-var-dart-6ulcustomboard-emmc-wifi.dtb

Build only the device tree for DART-6UL with i.MX6ULL SOC, NAND flash and SD card:
$ make -j4 imx6ull-var-dart-6ulcustomboard-nand-sd-card.dtb

Build only the device tree for DART-6UL with i.MX6ULL SOC, NAND flash and WiFi:
$ make -j4 imx6ull-var-dart-6ulcustomboard-nand-wifi.dtb

Build only the device tree for DART-6UL with i.MX6UL SOC, eMMC and SD card:
$ make -j4 imx6ul-var-dart-6ulcustomboard-emmc-sd-card.dtb

Build only the device tree for DART-6UL with i.MX6UL SOC, eMMC and WiFi:
$ make -j4 imx6ul-var-dart-6ulcustomboard-emmc-wifi.dtb

Build only the device tree for DART-6UL with i.MX6UL SOC, NAND flash and SD card:
$ make -j4 imx6ul-var-dart-6ulcustomboard-nand-sd-card.dtb

Build only the device tree for DART-6UL with i.MX6UL SOC, NAND flash and WiFi:
$ make -j4 imx6ul-var-dart-6ulcustomboard-nand-wifi.dtb

Build only the device tree for DART-6UL with i.MX6ULZ SOC, eMMC and SD card:
$ make -j4 imx6ulz-var-dart-6ulcustomboard-emmc-sd-card.dtb

Build only the device tree for DART-6UL with i.MX6ULZ SOC, eMMC and WiFi:
$ make -j4 imx6ulz-var-dart-6ulcustomboard-emmc-wifi.dtb

Build only the device tree for DART-6UL with i.MX6ULZ SOC, NAND flash and SD card:
$ make -j4 imx6ulz-var-dart-6ulcustomboard-nand-sd-card.dtb

Build only the device tree for DART-6UL with i.MX6ULZ SOC, NAND flash and WiFi:
$ make -j4 imx6ulz-var-dart-6ulcustomboard-nand-wifi.dtb

Build only the device tree for VAR-SOM-6UL on Concerto board with i.MX6ULL SOC, eMMC and SD card:
$ make -j4 imx6ull-var-som-concerto-board-emmc-sd-card.dtb

Build only the device tree for VAR-SOM-6UL on Concerto board with i.MX6ULL SOC, eMMC and WiFi:
$ make -j4 imx6ull-var-som-concerto-board-emmc-wifi.dtb

Build only the device tree for VAR-SOM-6UL on Concerto board with i.MX6ULL SOC, NAND flash and SD card:
$ make -j4 imx6ull-var-som-concerto-board-nand-sd-card.dtb

Build only the device tree for VAR-SOM-6UL on Concerto board with i.MX6ULL SOC, NAND flash and WiFi:
$ make -j4 imx6ull-var-som-concerto-board-nand-wifi.dtb

Build only the device tree for VAR-SOM-6UL on Concerto board with i.MX6UL SOC, eMMC and SD card:
$ make -j4 imx6ul-var-som-concerto-board-emmc-sd-card.dtb

Build only the device tree for VAR-SOM-6UL on Concerto board with i.MX6UL SOC, eMMC and WiFi:
$ make -j4 imx6ul-var-som-concerto-board-emmc-wifi.dtb

Build only the device tree for VAR-SOM-6UL on Concerto board with i.MX6UL SOC, NAND flash and SD card:
$ make -j4 imx6ul-var-som-concerto-board-nand-sd-card.dtb

Build only the device tree for VAR-SOM-6UL on Concerto board with i.MX6UL SOC, NAND flash and WiFi:
$ make -j4 imx6ul-var-som-concerto-board-nand-wifi.dtb

Build only the device tree for VAR-SOM-6UL on Concerto board with i.MX6ULZ SOC, eMMC and SD card:
$ make -j4 imx6ulz-var-som-concerto-board-emmc-sd-card.dtb

Build only the device tree for VAR-SOM-6UL on Concerto board with i.MX6ULZ SOC, eMMC and WiFi:
$ make -j4 imx6ulz-var-som-concerto-board-emmc-wifi.dtb

Build only the device tree for VAR-SOM-6UL on Concerto board with i.MX6ULZ SOC, NAND flash and SD card:
$ make -j4 imx6ulz-var-som-concerto-board-nand-sd-card.dtb

Build only the device tree for VAR-SOM-6UL on Concerto board with i.MX6ULZ SOC, NAND flash and WiFi:
$ make -j4 imx6ulz-var-som-concerto-board-nand-wifi.dtb

Build only the device tree for VAR-SOM-6UL on Symphony board with i.MX6ULL SOC, eMMC and SD card:
$ make -j4 imx6ull-var-som-symphony-board-emmc-sd-card.dtb

Build only the device tree for VAR-SOM-6UL on Symphony board with i.MX6ULL SOC, eMMC and WiFi:
$ make -j4 imx6ull-var-som-symphony-board-emmc-wifi.dtb

Build only the device tree for VAR-SOM-6UL on Symphony board with i.MX6ULL SOC, NAND flash and SD card:
$ make -j4 imx6ull-var-som-symphony-board-nand-sd-card.dtb

Build only the device tree for VAR-SOM-6UL on Symphony board with i.MX6ULL SOC, NAND flash and WiFi:
$ make -j4 imx6ull-var-som-symphony-board-nand-wifi.dtb

Build only the device tree for VAR-SOM-6UL on Symphony board with i.MX6UL SOC, eMMC and SD card:
$ make -j4 imx6ul-var-som-symphony-board-emmc-sd-card.dtb

Build only the device tree for VAR-SOM-6UL on Symphony board with i.MX6UL SOC, eMMC and WiFi:
$ make -j4 imx6ul-var-som-symphony-board-emmc-wifi.dtb

Build only the device tree for VAR-SOM-6UL on Symphony board with i.MX6UL SOC, NAND flash and SD card:
$ make -j4 imx6ul-var-som-symphony-board-nand-sd-card.dtb

Build only the device tree for VAR-SOM-6UL on Symphony board with i.MX6UL SOC, NAND flash and WiFi:
$ make -j4 imx6ul-var-som-symphony-board-nand-wifi.dtb

Build only the device tree for VAR-SOM-6UL on Symphony board with i.MX6ULZ SOC, eMMC and SD card:
$ make -j4 imx6ulz-var-som-symphony-board-emmc-sd-card.dtb

Build only the device tree for VAR-SOM-6UL on Symphony board with i.MX6ULZ SOC, eMMC and WiFi:
$ make -j4 imx6ulz-var-som-symphony-board-emmc-wifi.dtb

Build only the device tree for VAR-SOM-6UL on Symphony board with i.MX6ULZ SOC, NAND flash and SD card:
$ make -j4 imx6ulz-var-som-symphony-board-nand-sd-card.dtb

Build only the device tree for VAR-SOM-6UL on Symphony board with i.MX6ULZ SOC, NAND flash and WiFi:
$ make -j4 imx6ulz-var-som-symphony-board-nand-wifi.dtb


SD card image file tree

/opt/images/
└── Yocto
    ├── imx6ul-var-dart-emmc_wifi.dtb
    ├── imx6ul-var-dart-nand_wifi.dtb
    ├── imx6ul-var-dart-sd_emmc.dtb
    ├── imx6ul-var-dart-sd_nand.dtb
    ├── imx6ull-var-dart-emmc_wifi.dtb
    ├── imx6ull-var-dart-nand_wifi.dtb
    ├── imx6ull-var-dart-sd_emmc.dtb
    ├── imx6ull-var-dart-sd_nand.dtb
    ├── rootfs.tar.gz
    ├── rootfs.ubi
    ├── SPL-nand
    ├── SPL-sd
    ├── u-boot.img-nand
    ├── u-boot.img-sd
    └── zImage


/opt/images/
└── Yocto
    ├── imx6ul-var-dart-5g-emmc_wifi.dtb
    ├── imx6ul-var-dart-5g-nand_wifi.dtb
    ├── imx6ul-var-dart-emmc_wifi.dtb
    ├── imx6ul-var-dart-nand_wifi.dtb
    ├── imx6ul-var-dart-sd_emmc.dtb
    ├── imx6ul-var-dart-sd_nand.dtb
    ├── imx6ull-var-dart-5g-emmc_wifi.dtb
    ├── imx6ull-var-dart-5g-nand_wifi.dtb
    ├── imx6ull-var-dart-emmc_wifi.dtb
    ├── imx6ull-var-dart-nand_wifi.dtb
    ├── imx6ull-var-dart-sd_emmc.dtb
    ├── imx6ull-var-dart-sd_nand.dtb
    ├── rootfs.tar.gz
    ├── rootfs.ubi
    ├── SPL-nand
    ├── SPL-sd
    ├── u-boot.img-nand
    ├── u-boot.img-sd
    └── zImage


/opt/images/
└── Yocto
    ├── imx6ul-var-dart-5g-emmc_wifi.dtb
    ├── imx6ul-var-dart-5g-nand_wifi.dtb
    ├── imx6ul-var-dart-emmc_wifi.dtb
    ├── imx6ul-var-dart-nand_wifi.dtb
    ├── imx6ul-var-dart-sd_emmc.dtb
    ├── imx6ul-var-dart-sd_nand.dtb
    ├── imx6ull-var-dart-5g-emmc_wifi.dtb
    ├── imx6ull-var-dart-5g-nand_wifi.dtb
    ├── imx6ull-var-dart-emmc_wifi.dtb
    ├── imx6ull-var-dart-nand_wifi.dtb
    ├── imx6ull-var-dart-sd_emmc.dtb
    ├── imx6ull-var-dart-sd_nand.dtb
    ├── rootfs.tar.gz
    ├── rootfs_128kbpeb.ubi
    ├── rootfs_256kbpeb.ubi
    ├── SPL-nand
    ├── SPL-sd
    ├── u-boot.img-nand
    ├── u-boot.img-sd
    └── zImage


/opt/images/
└── Yocto
    ├── imx6ull-var-dart-6ulcustomboard-emmc-sd-card.dtb
    ├── imx6ull-var-dart-6ulcustomboard-emmc-wifi.dtb
    ├── imx6ull-var-dart-6ulcustomboard-nand-sd-card.dtb
    ├── imx6ull-var-dart-6ulcustomboard-nand-wifi.dtb
    ├── imx6ull-var-som-concerto-board-emmc-sd-card.dtb
    ├── imx6ull-var-som-concerto-board-emmc-wifi.dtb
    ├── imx6ull-var-som-concerto-board-nand-sd-card.dtb
    ├── imx6ull-var-som-concerto-board-nand-wifi.dtb
    ├── imx6ul-var-dart-6ulcustomboard-emmc-sd-card.dtb
    ├── imx6ul-var-dart-6ulcustomboard-emmc-wifi.dtb
    ├── imx6ul-var-dart-6ulcustomboard-nand-sd-card.dtb
    ├── imx6ul-var-dart-6ulcustomboard-nand-wifi.dtb
    ├── imx6ul-var-som-concerto-board-emmc-sd-card.dtb
    ├── imx6ul-var-som-concerto-board-emmc-wifi.dtb
    ├── imx6ul-var-som-concerto-board-nand-sd-card.dtb
    ├── imx6ul-var-som-concerto-board-nand-wifi.dtb
    ├── imx6ulz-var-dart-6ulcustomboard-emmc-sd-card.dtb
    ├── imx6ulz-var-dart-6ulcustomboard-emmc-wifi.dtb
    ├── imx6ulz-var-dart-6ulcustomboard-nand-sd-card.dtb
    ├── imx6ulz-var-dart-6ulcustomboard-nand-wifi.dtb
    ├── imx6ulz-var-som-concerto-board-emmc-sd-card.dtb
    ├── imx6ulz-var-som-concerto-board-emmc-wifi.dtb
    ├── imx6ulz-var-som-concerto-board-nand-sd-card.dtb
    ├── imx6ulz-var-som-concerto-board-nand-wifi.dtb
    ├── rootfs_128kbpeb.ubi
    ├── rootfs_256kbpeb.ubi
    ├── rootfs.tar.gz
    ├── SPL-nand
    ├── SPL-sd
    ├── u-boot.img-nand
    ├── u-boot.img-sd
    └── zImage


/opt/images/
└── Yocto
    ├── imx6ull-var-dart-6ulcustomboard-emmc-sd-card.dtb
    ├── imx6ull-var-dart-6ulcustomboard-emmc-wifi.dtb
    ├── imx6ull-var-dart-6ulcustomboard-nand-sd-card.dtb
    ├── imx6ull-var-dart-6ulcustomboard-nand-wifi.dtb
    ├── imx6ull-var-som-concerto-board-emmc-sd-card.dtb
    ├── imx6ull-var-som-concerto-board-emmc-wifi.dtb
    ├── imx6ull-var-som-concerto-board-nand-sd-card.dtb
    ├── imx6ull-var-som-concerto-board-nand-wifi.dtb
    ├── imx6ull-var-som-symphony-board-emmc-sd-card.dtb
    ├── imx6ull-var-som-symphony-board-emmc-wifi.dtb
    ├── imx6ull-var-som-symphony-board-nand-sd-card.dtb
    ├── imx6ull-var-som-symphony-board-nand-wifi.dtb
    ├── imx6ul-var-dart-6ulcustomboard-emmc-sd-card.dtb
    ├── imx6ul-var-dart-6ulcustomboard-emmc-wifi.dtb
    ├── imx6ul-var-dart-6ulcustomboard-nand-sd-card.dtb
    ├── imx6ul-var-dart-6ulcustomboard-nand-wifi.dtb
    ├── imx6ul-var-som-concerto-board-emmc-sd-card.dtb
    ├── imx6ul-var-som-concerto-board-emmc-wifi.dtb
    ├── imx6ul-var-som-concerto-board-nand-sd-card.dtb
    ├── imx6ul-var-som-symphony-board-emmc-sd-card.dtb
    ├── imx6ul-var-som-symphony-board-emmc-wifi.dtb
    ├── imx6ul-var-som-symphony-board-nand-sd-card.dtb
    ├── imx6ul-var-som-symphony-board-nand-wifi.dtb
    ├── imx6ul-var-som-concerto-board-nand-wifi.dtb
    ├── imx6ulz-var-dart-6ulcustomboard-emmc-sd-card.dtb
    ├── imx6ulz-var-dart-6ulcustomboard-emmc-wifi.dtb
    ├── imx6ulz-var-dart-6ulcustomboard-nand-sd-card.dtb
    ├── imx6ulz-var-dart-6ulcustomboard-nand-wifi.dtb
    ├── imx6ulz-var-som-concerto-board-emmc-sd-card.dtb
    ├── imx6ulz-var-som-concerto-board-emmc-wifi.dtb
    ├── imx6ulz-var-som-concerto-board-nand-sd-card.dtb
    ├── imx6ulz-var-som-concerto-board-nand-wifi.dtb
    ├── imx6ulz-var-som-symphony-board-emmc-sd-card.dtb
    ├── imx6ulz-var-som-symphony-board-emmc-wifi.dtb
    ├── imx6ulz-var-som-symphony-board-nand-sd-card.dtb
    ├── imx6ulz-var-som-symphony-board-nand-wifi.dtb
    ├── rootfs_128kbpeb.ubi
    ├── rootfs_256kbpeb.ubi
    ├── rootfs.tar.gz
    ├── SPL-nand
    ├── SPL-sd
    ├── u-boot.img-nand
    ├── u-boot.img-sd
    └── zImage


Flash Recovery SD from GUI

Flash from GUI

DART-6UL Recovery Sumo.png

Touch/Click on the appropriate icon:

  • Install Yocto NAND, WiFi: Flash Yocto with WiFi support to NAND flash
  • Install Yocto NAND, SD card: Flash Yocto with SD card support to NAND flash
  • Install Yocto eMMC (SD/WiFi) : Flash Yocto to eMMC (installs both SD card and WiFi dtbs to the BOOT partition and let U-Boot select between them at boot time)


Setting the Boot Mode

Booting your system from an SD card requires switching the Boot DIP switches. See picture below.

Boot switch 6ul1.jpg
  • "00" The current position in the picture will set the system to boot from SD card
  • "01" Moving the right switch will set the system to boot from eMMC
  • "10" Moving the left switch will set the system to boot from NAND flash
  • "11" is illegal.
Be aware that your system has eMMC or NAND but never both.


Booting your system from an SD card requires switching the Boot DIP switches. See picture below.
On the VAR-6ULCustomBoard (with a DART-6UL):

Boot switch 6ul1.jpg
  • "00" The current position in the picture will set the system to boot from SD card
  • "01" Moving the right switch will set the system to boot from eMMC
  • "10" Moving the left switch will set the system to boot from NAND flash
  • "11" is illegal.
Be aware that your system has eMMC or NAND but never both.



On the Concerto-Board (with a VAR-SOM-6UL):

Boot switch concerto.jpg
  • ON-EXT: Boot from the external storage (SD card) - the current position in the picture
  • OFF-INT: Boot from the SOM's internal storage (eMMC/NAND flash)


Using only one Ethernet port

Apply the following patch to the Linux kernel source, for removing the second Ethernet port, in case your own custom carrier board only has one and doesn't have the second Ethernet phy:

diff --git a/arch/arm/boot/dts/imx6ul-imx6ull-var-dart-common.dtsi b/arch/arm/boot/dts/imx6ul-imx6ull-var-dart-common.dtsi
index f79a356..032ed00 100644
--- a/arch/arm/boot/dts/imx6ul-imx6ull-var-dart-common.dtsi
+++ b/arch/arm/boot/dts/imx6ul-imx6ull-var-dart-common.dtsi
@@ -159,17 +159,6 @@
 	phy-reset-on-resume;
 	phy-handle = <&ethphy0>;
 	status = "okay";
-};
-
-&fec2 {
-	pinctrl-names = "default";
-	pinctrl-0 = <&pinctrl_enet2>;
-	phy-mode = "rmii";
-	phy-handle = <&ethphy1>;
-	phy-reset-gpios=<&gpio1 10 1>;
-	phy-reset-duration=<100>;
-	phy-reset-on-resume;
-	status = "okay";
 	mdio {
 		#address-cells = <1>;
 		#size-cells = <0>;
@@ -181,14 +170,6 @@
 			clock-names = "rmii-ref";
 			reg = <1>;
 		};
-
-		ethphy1: ethernet-phy@3 {
-			compatible = "ethernet-phy-ieee802.3-c22";
-			micrel,rmii-reference-clock-select-25-mhz;
-			clocks = <&rmii_ref_clk>;
-			clock-names = "rmii-ref";
-			reg = <3>;
-		};
 	};
 };
 
@@ -460,8 +441,8 @@
 			fsl,pins = <
 				MX6UL_PAD_CSI_HSYNC__GPIO4_IO20		0x1b0b0	/* User LED */
 				MX6UL_PAD_GPIO1_IO00__GPIO1_IO00	0x17059	/* User Button */
-				MX6UL_PAD_GPIO1_IO07__ENET2_MDC		0x1b0b0
-				MX6UL_PAD_GPIO1_IO06__ENET2_MDIO	0x1b0b0
+				MX6UL_PAD_GPIO1_IO07__ENET1_MDC		0x1b0b0
+				MX6UL_PAD_GPIO1_IO06__ENET1_MDIO	0x1b0b0
 #ifdef WIFI
 				MX6UL_PAD_GPIO1_IO03__REF_CLK_32K	0x03029	/* WLAN Slow Clock */
 #endif
@@ -481,20 +462,6 @@
 			>;
 		};
 
-		pinctrl_enet2: enet2grp {
-			fsl,pins = <
-				MX6UL_PAD_ENET2_RX_EN__ENET2_RX_EN	0x1b0b0
-				MX6UL_PAD_ENET2_RX_ER__ENET2_RX_ER	0x1b0b0
-				MX6UL_PAD_ENET2_RX_DATA0__ENET2_RDATA00	0x1b0b0
-				MX6UL_PAD_ENET2_RX_DATA1__ENET2_RDATA01	0x1b0b0
-				MX6UL_PAD_ENET2_TX_EN__ENET2_TX_EN	0x1b0b0
-				MX6UL_PAD_ENET2_TX_DATA0__ENET2_TDATA00	0x1b0b0
-				MX6UL_PAD_ENET2_TX_DATA1__ENET2_TDATA01	0x1b0b0
-				MX6UL_PAD_ENET2_TX_CLK__ENET2_REF_CLK2	0x4001b031
-				MX6UL_PAD_JTAG_MOD__GPIO1_IO10		0x1b0b0
-			>;
-		};
-
 		pinctrl_flexcan1: flexcan1grp{
 			fsl,pins = <
 				MX6UL_PAD_LCD_DATA09__FLEXCAN1_RX	0x1b020

Notes:
- You can follow the "Build Linux from source code" guide to get the Linux kernel source, apply the above patch, build only the device trees and copy them to your SD card.
- In older kernel releases where there is no imx6ul-imx6ull-var-dart-common.dtsi file, the relevant file to edit is called imx6ul-var-dart.dtsi


To remove the second Ethernet port, in case your own custom carrier board only has one and doesn't have the second Ethernet phy:
Edit the dtsi file of the reference carrier board in the Linux kernel source and remove the &fec1 and &fec2 nodes from it.
In case of the VAR-6ULCustomBoard (DART-6UL carrier), the file is arch/arm/boot/dts/imx6ul-imx6ull-var-dart-6ulcustomboard.dtsi.
In case of the Concerto-Board (VAR-SOM-6UL carrier), the file is arch/arm/boot/dts/imx6ul-imx6ull-var-som-concerto-board.dtsi.
The above will result in using the &fec1 node from the dtsi file of the SOM, as is (as the phy of the first Ethernet port is on the SOM), without adding the second port (which its phy is on the reference carrier board).
Notes:
- You can follow the "Build Linux from source code" guide to get the Linux kernel source, apply the above patch, build only the device trees and copy them to your SD card.


VAR-SOM-MX7

Build Results

Image Name
How to use
fsl-image-gui-. This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
fsl-image-gui-_128kbpeb.ubi A complete UBI image containing a UBIFS volume, for writing to NAND flash with 128KiB PEB
fsl-image-gui-_256kbpeb.ubi A complete UBI image containing a UBIFS volume, for writing to NAND flash with 256KiB PEB
Linux kernel image, same binary for SD card/eMMC or NAND flash.
SPL built for SD card boot or eMMC boot.
SPL built for NAND flash.
U-Boot built for SD card boot or eMMC boot.
U-Boot built for NAND flash.
File Name Description
zImage-imx7d-var-som-emmc.dtb Device tree blob for SOMs with eMMC.
zImage-imx7d-var-som-nand.dtb Device tree blob for SOMs with NAND flash.
zImage-imx7d-var-som-emmc-m4.dtb Device tree blob for SOMs with eMMC and M4 support.
zImage-imx7d-var-som-nand-m4.dtb Device tree blob for SOMs with NAND flash and M4 support.


Device tree

Build only the device tree for VAR-SOM-MX7 with eMMC:
$ make -j4 imx7d-var-som-emmc.dtb

Build only the device tree for VAR-SOM-MX7 with NAND flash:
$ make -j4 imx7d-var-som-nand.dtb

Build only the device tree for VAR-SOM-MX7 with eMMC and M4 support:
$ make -j4 imx7d-var-som-emmc-m4.dtb

Build only the device tree for VAR-SOM-MX7 with NAND flash and M4 support:
$ make -j4 imx7d-var-som-nand-m4.dtb


SD card image file tree

/opt/images/
└── Yocto
    ├── imx7d-var-som-emmc.dtb
    ├── imx7d-var-som-nand.dtb
    ├── imx7d-var-som-emmc-m4.dtb
    ├── imx7d-var-som-nand-m4.dtb
    ├── rootfs.tar.gz
    ├── rootfs.ubi
    ├── u-boot.imx-nand
    ├── u-boot.imx-sd
    └── zImage


/opt/images/
└── Yocto
    ├── imx7d-var-som-emmc.dtb
    ├── imx7d-var-som-nand.dtb
    ├── imx7d-var-som-emmc-m4.dtb
    ├── imx7d-var-som-nand-m4.dtb
    ├── rootfs.tar.gz
    ├── rootfs.ubi
    ├── SPL-nand
    ├── SPL-sd
    ├── u-boot.img-nand
    ├── u-boot.img-sd
    └── zImage


/opt/images/
└── Yocto
    ├── imx7d-var-som-emmc.dtb
    ├── imx7d-var-som-nand.dtb
    ├── imx7d-var-som-emmc-m4.dtb
    ├── imx7d-var-som-nand-m4.dtb
    ├── rootfs.tar.gz
    ├── rootfs_128kbpeb.ubi
    ├── rootfs_256kbpeb.ubi
    ├── SPL-nand
    ├── SPL-sd
    ├── u-boot.img-nand
    ├── u-boot.img-sd
    └── zImage


Flash Recovery SD from GUI

Flash from GUI

VAR-SOM-MX7 Rocko Recovery.png

Touch/Click on the appropriate icon:

  • Install Yocto NAND flash: Flash Yocto to NAND flash
  • Install Yocto eMMC: Flash Yocto to eMMC


Setting the Boot Mode

Make sure the BOOT SELECT DIP switches on the carrier board are set correctly before you power on the board.

SW1-SW2
 0 - 0 : Boot from SD card
 1 - 0 : Boot from eMMC
 0 - 1 : Boot from NAND flash
 1 - 1 : Illegal
The VAR-SOM-MX7 SOM comes with either NAND or eMMC, but not both.


DART-MX8M

Build Results

Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
Image.gz-imx8m-var-dart-emmc-wifi-hdmi.dtb Device tree blob for eMMC, WIFI and HDMI display configuration.
Image.gz-imx8m-var-dart-emmc-wifi-hdmi-4k.dtb Device tree blob for eMMC, WIFI and HDMI 4K display configuration.
Image.gz-imx8m-var-dart-emmc-wifi-dcss-lvds.dtb Device tree blob for eMMC, WIFI and DCSS LVDS display configuration.
Image.gz-imx8m-var-dart-emmc-wifi-lcdif-lvds.dtb Device tree blob for eMMC, WIFI and LCDIF LVDS display configuration.
Image.gz-imx8m-var-dart-emmc-wifi-dual-display.dtb Device tree blob for eMMC, WIFI and dual LVDS+HDMI display configuration.
Image.gz-imx8m-var-dart-sd-emmc-hdmi.dtb Device tree blob for SD, eMMC and HDMI display configuration.
Image.gz-imx8m-var-dart-sd-emmc-hdmi-4k.dtb Device tree blob for SD, eMMC and HDMI 4K display configuration.
Image.gz-imx8m-var-dart-sd-emmc-dcss-lvds.dtb Device tree blob for SD, eMMC and DCSS LVDS display configuration.
Image.gz-imx8m-var-dart-sd-emmc-lcdif-lvds.dtb Device tree blob for SD, eMMC and LCDIF LVDS display configuration.
Image.gz-imx8m-var-dart-sd-emmc-dual-display.dtb Device tree blob for SD, eMMC and dual LVDS+HDMI display configuration.


Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
Image.gz-fsl-imx8mq-var-dart-emmc-wifi-hdmi.dtb DTB for DART-MX8M with WIFI and HDMI display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-emmc-wifi-lvds.dtb DTB for DART-MX8M with WIFI and LVDS display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-emmc-wifi-dual-display.dtb DTB for DART-MX8M with WIFI and dual LVDS+HDMI display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-emmc-wifi-hdmi-cb12.dtb DTB for DART-MX8M with WIFI and HDMI display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-emmc-wifi-lvds-cb12.dtb DTB for DART-MX8M with WIFI and LVDS display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-emmc-wifi-dual-display-cb12.dtb DTB for DART-MX8M with WIFI and dual LVDS+HDMI display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-sd-emmc-hdmi.dtb DTB for DART-MX8M with SD card and HDMI display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-sd-emmc-lvds.dtb DTB for DART-MX8M with SD card and LCDIF LVDS display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-sd-emmc-dual-display.dtb DTB for DART-MX8M with SD card and dual LVDS+HDMI display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-sd-emmc-hdmi-cb12.dtb DTB for DART-MX8M with SD card and HDMI display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-sd-emmc-lvds-cb12.dtb DTB for DART-MX8M with SD card and LCDIF LVDS display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-sd-emmc-dual-display-cb12.dtb DTB for DART-MX8M with SD card and dual LVDS+HDMI display support on carrier board revisions 1.1 and 1.2.


Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
Image.gz-fsl-imx8mq-var-dart-sd-dp.dtb DTB for DART-MX8M with SD card and DP display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-sd-hdmi.dtb DTB for DART-MX8M with SD card and HDMI display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-sd-lvds.dtb DTB for DART-MX8M with SD card and LVDS display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-sd-lvds-dp.dtb DTB for DART-MX8M with SD card and dual LVDS+DP display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-sd-lvds-hdmi.dtb DTB for DART-MX8M with SD card and dual LVDS+HDMI display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-sd-hdmi-cb12.dtb DTB for DART-MX8M with SD card and HDMI display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-sd-lvds-cb12.dtb DTB for DART-MX8M with SD card and LVDS display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-sd-lvds-hdmi-cb12.dtb DTB for DART-MX8M with SD card and dual LVDS+HDMI display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-wifi-dp.dtb DTB for DART-MX8M with WIFI and DP display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-wifi-hdmi.dtb DTB for DART-MX8M with WIFI and HDMI display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-wifi-lvds.dtb DTB for DART-MX8M with WIFI and LVDS display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-wifi-lvds-dp.dtb DTB for DART-MX8M with WIFI and dual LVDS+DP display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-wifi-lvds-hdmi.dtb DTB for DART-MX8M with WIFI and dual LVDS+HDMI display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-wifi-hdmi-cb12.dtb DTB for DART-MX8M with WIFI and HDMI display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-wifi-lvds-cb12.dtb DTB for DART-MX8M with WIFI and LVDS display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-wifi-lvds-hdmi-cb12.dtb DTB for DART-MX8M with WIFI and dual LVDS+HDMI display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-m4-sd-dp.dtb DTB for DART-MX8M with M4, SD card and DP display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-m4-sd-hdmi.dtb DTB for DART-MX8M with M4, SD card and HDMI display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-m4-sd-lvds.dtb DTB for DART-MX8M with M4, SD card and LVDS display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-m4-sd-lvds-dp.dtb DTB for DART-MX8M with M4, SD card and dual LVDS+DP display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-m4-sd-lvds-hdmi.dtb DTB for DART-MX8M with M4, SD card and dual LVDS+HDMI display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-m4-sd-hdmi-cb12.dtb DTB for DART-MX8M with M4, SD card and HDMI display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-m4-sd-lvds-cb12.dtb DTB for DART-MX8M with M4, SD card and LVDS display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-m4-sd-lvds-hdmi-cb12.dtb DTB for DART-MX8M with M4, SD card and dual LVDS+HDMI display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-m4-wifi-dp.dtb DTB for DART-MX8M with M4, WIFI and DP display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-m4-wifi-hdmi.dtb DTB for DART-MX8M with M4, WIFI and HDMI display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-m4-wifi-lvds.dtb DTB for DART-MX8M with M4, WIFI and LVDS display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-m4-wifi-lvds-dp.dtb DTB for DART-MX8M with M4, WIFI and dual LVDS+DP display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-m4-wifi-lvds-hdmi.dtb DTB for DART-MX8M with M4, WIFI and dual LVDS+HDMI display support on carrier board revisions 1.3 and higher.
Image.gz-fsl-imx8mq-var-dart-m4-wifi-hdmi-cb12.dtb DTB for DART-MX8M with M4, WIFI and HDMI display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-m4-wifi-lvds-cb12.dtb DTB for DART-MX8M with M4, WIFI and LVDS display support on carrier board revisions 1.1 and 1.2.
Image.gz-fsl-imx8mq-var-dart-m4-wifi-lvds-hdmi-cb12.dtb DTB for DART-MX8M with M4, WIFI and dual LVDS+HDMI display support on carrier board revisions 1.1 and 1.2.


Image Name
How to use
fsl-image-gui-.wic.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx8mq-var-dart-dt8mcustomboard-sd-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with SD card and HDMI display.
imx8mq-var-dart-dt8mcustomboard-sd-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with SD card and LVDS display.
imx8mq-var-dart-dt8mcustomboard-sd-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with SD card and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-wifi-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with WIFI and HDMI display.
imx8mq-var-dart-dt8mcustomboard-wifi-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with WIFI and LVDS display.
imx8mq-var-dart-dt8mcustomboard-wifi-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with WIFI and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-m4-sd-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with M4, SD card and HDMI display.
imx8mq-var-dart-dt8mcustomboard-m4-sd-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with M4, SD card and LVDS display.
imx8mq-var-dart-dt8mcustomboard-m4-sd-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with M4, SD card and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-m4-wifi-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with M4, WIFI and HDMI display.
imx8mq-var-dart-dt8mcustomboard-m4-wifi-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with M4, WIFI and LVDS display.
imx8mq-var-dart-dt8mcustomboard-m4-wifi-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with M4, WIFI and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-sd-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with SD card and DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-sd-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with SD card and HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-sd-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with SD card and LVDS display.
imx8mq-var-dart-dt8mcustomboard-legacy-sd-lvds-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with SD card and dual LVDS+DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-sd-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with SD card and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-wifi-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with WIFI and DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-wifi-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with WIFI and HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-wifi-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with WIFI and LVDS display.
imx8mq-var-dart-dt8mcustomboard-legacy-wifi-lvds-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with WIFI and dual LVDS+DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-wifi-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with WIFI and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-sd-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, SD card and DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-sd-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, SD card and HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-sd-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, SD card and LVDS display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-sd-lvds-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, SD card and dual LVDS+DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-sd-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, SD card and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-wifi-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, WIFI and DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-wifi-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, WIFI and HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-wifi-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, WIFI and LVDS display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-wifi-lvds-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, WIFI and dual LVDS+DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-wifi-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, WIFI and dual LVDS+HDMI display.


Image Name
How to use
fsl-image-gui-.wic.zst This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.zst Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx8mq-var-dart-dt8mcustomboard-sd-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard with SD card and HDMI display.
imx8mq-var-dart-dt8mcustomboard-sd-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard with SD card and LVDS display.
imx8mq-var-dart-dt8mcustomboard-sd-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard with SD card and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-wifi-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard with WIFI and HDMI display.
imx8mq-var-dart-dt8mcustomboard-wifi-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard with WIFI and LVDS display.
imx8mq-var-dart-dt8mcustomboard-wifi-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard with WIFI and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-m4-sd-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard with M4, SD card and HDMI display.
imx8mq-var-dart-dt8mcustomboard-m4-sd-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard with M4, SD card and LVDS display.
imx8mq-var-dart-dt8mcustomboard-m4-sd-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard with M4, SD card and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-m4-wifi-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard with M4, WIFI and HDMI display.
imx8mq-var-dart-dt8mcustomboard-m4-wifi-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard with M4, WIFI and LVDS display.
imx8mq-var-dart-dt8mcustomboard-m4-wifi-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard with M4, WIFI and dual LVDS+HDMI display.


Basler Camera

local.conf

IMAGE_INSTALL_append = " \
	basler-camera-driver \
	pylon \
	python3-pypylon \
	gentl-producer \
	xauth \
"
MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "kernel-module-basler-camera-driver"


ACCEPT_BASLER_EULA = "1"
IMAGE_INSTALL_append = "packagegroup-dart-bcon-mipi"


E-con Camera

local.conf

IMAGE_INSTALL_append = " \
       econ-camera-driver \
"
MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "kernel-module-econ-camera-driver"


Device tree

Build only the device tree for DART-MX8M with WIFI and HDMI display support:
$ make -j4 imx8m-var-dart-emmc-wifi-hdmi.dtb

Build only the device tree for DART-MX8M with WIFI and HDMI 4K display support:
$ make -j4 imx8m-var-dart-emmc-wifi-hdmi-4k.dtb

Build only the device tree for DART-MX8M with WIFI and DCSS LVDS display support:
$ make -j4 imx8m-var-dart-emmc-wifi-dcss-lvds.dtb

Build only the device tree for DART-MX8M with WIFI and LCDIF LVDS display support:
$ make -j4 imx8m-var-dart-emmc-wifi-lcdif-lvds.dtb

Build only the device tree for DART-MX8M with WIFI and dual LVDS+HDMI display support:
$ make -j4 imx8m-var-dart-emmc-wifi-dual-display.dtb

Build only the device tree for DART-MX8M with SD, and HDMI display support:
$ make -j4 imx8m-var-dart-sd-emmc-hdmi.dtb

Build only the device tree for DART-MX8M with SD, and HDMI 4K display support:
$ make -j4 imx8m-var-dart-sd-emmc-hdmi-4k.dtb

Build only the device tree for DART-MX8M with SD, and DCSS LVDS display support:
$ make -j4 imx8m-var-dart-sd-emmc-dcss-lvds.dtb

Build only the device tree for DART-MX8M with SD, and LCDIF LVDS display support:
$ make -j4 imx8m-var-dart-sd-emmc-lcdif-lvds.dtb

Build only the device tree for DART-MX8M with SD, and dual LVDS+HDMI display support:
$ make -j4 imx8m-var-dart-sd-emmc-dual-display.dtb


Build only the device tree for DART-MX8M with WIFI and HDMI display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-emmc-wifi-hdmi.dtb

Build only the device tree for DART-MX8M with WIFI and LVDS display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-emmc-wifi-lvds.dtb

Build only the device tree for DART-MX8M with WIFI and dual LVDS+HDMI display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-emmc-wifi-dual-display.dtb

Build only the device tree for DART-MX8M with SD, and HDMI display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-sd-emmc-hdmi.dtb

Build only the device tree for DART-MX8M with SD, and LVDS display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-sd-emmc-lvds.dtb

Build only the device tree for DART-MX8M with SD, and dual LVDS+HDMI display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-sd-emmc-dual-display.dtb


Build only the device tree for DART-MX8M with SD and DP display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-sd-dp.dtb

Build only the device tree for DART-MX8M with SD and HDMI display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-sd-hdmi.dtb

Build only the device tree for DART-MX8M with SD and LVDS display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-sd-lvds.dtb

Build only the device tree for DART-MX8M with SD and dual LVDS+DP display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-sd-lvds-dp.dtb

Build only the device tree for DART-MX8M with SD and dual LVDS+HDMI display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-sd-lvds-hdmi.dtb

Build only the device tree for DART-MX8M with WIFI and DP display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-wifi-dp.dtb

Build only the device tree for DART-MX8M with WIFI and HDMI display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-wifi-hdmi.dtb

Build only the device tree for DART-MX8M with WIFI and LVDS display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-wifi-lvds.dtb

Build only the device tree for DART-MX8M with WIFI and dual LVDS+DP display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-wifi-lvds-dp.dtb

Build only the device tree for DART-MX8M with WIFI and dual LVDS+HDMI display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-wifi-lvds-hdmi.dtb

Build only the device tree for DART-MX8M with M4, SD and DP display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-m4-sd-dp.dtb

Build only the device tree for DART-MX8M with M4, SD and HDMI display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-m4-sd-hdmi.dtb

Build only the device tree for DART-MX8M with M4, SD and LVDS display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-m4-sd-lvds.dtb

Build only the device tree for DART-MX8M with M4, SD and dual LVDS+DP display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-m4-sd-lvds-dp.dtb

Build only the device tree for DART-MX8M with M4, SD and dual LVDS+HDMI display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-m4-sd-lvds-hdmi.dtb

Build only the device tree for DART-MX8M with M4, WIFI and DP display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-m4-wifi-dp.dtb

Build only the device tree for DART-MX8M with M4, WIFI and HDMI display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-m4-wifi-hdmi.dtb

Build only the device tree for DART-MX8M with M4, WIFI and LVDS display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-m4-wifi-lvds.dtb

Build only the device tree for DART-MX8M with M4, WIFI and dual LVDS+DP display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-m4-wifi-lvds-dp.dtb

Build only the device tree for DART-MX8M with M4, WIFI and dual LVDS+HDMI display support:
$ make -j4 freescale/fsl-imx8mq-var-dart-m4-wifi-lvds-hdmi.dtb


Build only the device tree for DART-MX8M with SD and DP display support:
$ make -j4 freescale/imx8mq-var-dart-sd-dp.dtb

Build only the device tree for DART-MX8M with SD and HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-sd-hdmi.dtb

Build only the device tree for DART-MX8M with SD and LVDS display support:
$ make -j4 freescale/imx8mq-var-dart-sd-lvds.dtb

Build only the device tree for DART-MX8M with SD and dual LVDS+DP display support:
$ make -j4 freescale/imx8mq-var-dart-sd-lvds-dp.dtb

Build only the device tree for DART-MX8M with SD and dual LVDS+HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-sd-lvds-hdmi.dtb

Build only the device tree for DART-MX8M with WIFI and DP display support:
$ make -j4 freescale/imx8mq-var-dart-wifi-dp.dtb

Build only the device tree for DART-MX8M with WIFI and HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-wifi-hdmi.dtb

Build only the device tree for DART-MX8M with WIFI and LVDS display support:
$ make -j4 freescale/imx8mq-var-dart-wifi-lvds.dtb

Build only the device tree for DART-MX8M with WIFI and dual LVDS+DP display support:
$ make -j4 freescale/imx8mq-var-dart-wifi-lvds-dp.dtb

Build only the device tree for DART-MX8M with WIFI and dual LVDS+HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-wifi-lvds-hdmi.dtb

Build only the device tree for DART-MX8M with M4, SD and DP display support:
$ make -j4 freescale/imx8mq-var-dart-m4-sd-dp.dtb

Build only the device tree for DART-MX8M with M4, SD and HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-m4-sd-hdmi.dtb

Build only the device tree for DART-MX8M with M4, SD and LVDS display support:
$ make -j4 freescale/imx8mq-var-dart-m4-sd-lvds.dtb

Build only the device tree for DART-MX8M with M4, SD and dual LVDS+DP display support:
$ make -j4 freescale/imx8mq-var-dart-m4-sd-lvds-dp.dtb

Build only the device tree for DART-MX8M with M4, SD and dual LVDS+HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-m4-sd-lvds-hdmi.dtb

Build only the device tree for DART-MX8M with M4, WIFI and DP display support:
$ make -j4 freescale/imx8mq-var-dart-m4-wifi-dp.dtb

Build only the device tree for DART-MX8M with M4, WIFI and HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-m4-wifi-hdmi.dtb

Build only the device tree for DART-MX8M with M4, WIFI and LVDS display support:
$ make -j4 freescale/imx8mq-var-dart-m4-wifi-lvds.dtb

Build only the device tree for DART-MX8M with M4, WIFI and dual LVDS+DP display support:
$ make -j4 freescale/imx8mq-var-dart-m4-wifi-lvds-dp.dtb

Build only the device tree for DART-MX8M with M4, WIFI and dual LVDS+HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-m4-wifi-lvds-hdmi.dtb


Build only the device tree for DART-MX8M with SD and DP display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-sd-dp.dtb

Build only the device tree for DART-MX8M with SD and HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-sd-hdmi.dtb

Build only the device tree for DART-MX8M with SD and LVDS display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-sd-lvds.dtb

Build only the device tree for DART-MX8M with SD and dual LVDS+DP display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-sd-lvds-dp.dtb

Build only the device tree for DART-MX8M with SD and dual LVDS+HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-sd-lvds-hdmi.dtb

Build only the device tree for DART-MX8M with WIFI and DP display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-wifi-dp.dtb

Build only the device tree for DART-MX8M with WIFI and HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-wifi-hdmi.dtb

Build only the device tree for DART-MX8M with WIFI and LVDS display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-wifi-lvds.dtb

Build only the device tree for DART-MX8M with WIFI and dual LVDS+DP display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-wifi-lvds-dp.dtb

Build only the device tree for DART-MX8M with WIFI and dual LVDS+HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-wifi-lvds-hdmi.dtb

Build only the device tree for DART-MX8M with M4, SD and DP display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-sd-dp.dtb

Build only the device tree for DART-MX8M with M4, SD and HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-sd-hdmi.dtb

Build only the device tree for DART-MX8M with M4, SD and LVDS display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-sd-lvds.dtb

Build only the device tree for DART-MX8M with M4, SD and dual LVDS+DP display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-sd-lvds-dp.dtb

Build only the device tree for DART-MX8M with M4, SD and dual LVDS+HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-sd-lvds-hdmi.dtb

Build only the device tree for DART-MX8M with M4, WIFI and DP display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-wifi-dp.dtb

Build only the device tree for DART-MX8M with M4, WIFI and HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-wifi-hdmi.dtb

Build only the device tree for DART-MX8M with M4, WIFI and LVDS display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-wifi-lvds.dtb

Build only the device tree for DART-MX8M with M4, WIFI and dual LVDS+DP display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-wifi-lvds-dp.dtb

Build only the device tree for DART-MX8M with M4, WIFI and dual LVDS+HDMI display support:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-wifi-lvds-hdmi.dtb


Build only the device tree for DART-MX8M on DT8MCustomBoard V2.x and above with SD and HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-sd-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V2.x and above with SD and LVDS display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-sd-lvds.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V2.x and above with SD and dual LVDS+HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-sd-lvds-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V2.x and above with WIFI and HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-wifi-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V2.x and above with WIFI and LVDS display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-wifi-lvds.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V2.x and above with WIFI and dual LVDS+HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-wifi-lvds-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V2.x and above with M4, SD and HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-sd-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V2.x and above with M4, SD and dual LVDS+HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-sd-lvds-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V2.x and above with M4, WIFI and HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-wifi-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V2.x and above with M4, WIFI and LVDS display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-wifi-lvds.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V2.x and above with M4, WIFI and dual LVDS+HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-wifi-lvds-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with SD and DP display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-sd-dp.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with SD and HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-sd-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with SD and LVDS display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-sd-lvds.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with SD and dual LVDS+DP display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-sd-lvds-dp.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with SD and dual LVDS+HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-sd-lvds-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with WIFI and DP display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-wifi-dp.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with WIFI and HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-wifi-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with WIFI and LVDS display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-wifi-lvds.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with WIFI and dual LVDS+DP display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-wifi-lvds-dp.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with WIFI and dual LVDS+HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-wifi-lvds-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, SD and DP display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-m4-sd-dp.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, SD and HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-m4-sd-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, SD and dual LVDS+DP display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-m4-sd-lvds-dp.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, SD and dual LVDS+HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-m4-sd-lvds-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, WIFI and DP display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-m4-wifi-dp.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, WIFI and HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-m4-wifi-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, WIFI and LVDS display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-m4-wifi-lvds.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, WIFI and dual LVDS+DP display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-m4-wifi-lvds-dp.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, WIFI and dual LVDS+HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-legacy-m4-wifi-lvds-hdmi.dtb


Build only the device tree for DART-MX8M on DT8MCustomBoard with SD and HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-sd-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard with SD and LVDS display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-sd-lvds.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard with SD and dual LVDS+HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-sd-lvds-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard with WIFI and HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-wifi-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard with WIFI and LVDS display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-wifi-lvds.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard with WIFI and dual LVDS+HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-wifi-lvds-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard with M4, SD and HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-sd-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard with M4, SD and dual LVDS+HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-sd-lvds-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard with M4, WIFI and HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-wifi-hdmi.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard with M4, WIFI and LVDS display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-wifi-lvds.dtb

Build only the device tree for DART-MX8M on DT8MCustomBoard with M4, WIFI and dual LVDS+HDMI display:
$ make -j4 freescale/imx8mq-var-dart-dt8mcustomboard-m4-wifi-lvds-hdmi.dtb


SD card image file tree

/opt/images/
└── Yocto
    ├── imx-boot-sd.bin
    └── rootfs.tar.gz


SD card image file tree

/opt/images/
└── Yocto
    ├── imx-boot-imx8mq-var-dart-sd.bin-flash_dp_evk
    ├── imx-boot-imx8mq-var-dart-sd.bin-flash_evk
    ├── imx-boot-imx8mq-var-dart-sd.bin-flash_evk_no_hdmi
    ├── imx-boot-sd.bin -> imx-boot-imx8mq-var-dart-sd.bin-flash_evk
    └── rootfs.tar.gz



DTB File Name
Description
imx8m-var-dart-emmc-wifi-hdmi.dtb Device tree blob for eMMC, WIFI and HDMI display configuration. SD card disabled.
imx8m-var-dart-emmc-wifi-hdmi-4k.dtb Device tree blob for eMMC, WIFI and HDMI 4K display configuration. SD card disabled.
imx8m-var-dart-emmc-wifi-dcss-lvds.dtb Device tree blob for eMMC, WIFI and DCSS LVDS display configuration. SD card disabled.
imx8m-var-dart-emmc-wifi-lcdif-lvds.dtb Device tree blob for eMMC, WIFI and LCDIF LVDS display configuration. SD card disabled.
imx8m-var-dart-emmc-wifi-dual-display.dtb Device tree blob for eMMC, WIFI and dual LVDS+HDMI display configuration. SD card disabled.
imx8m-var-dart-sd-emmc-hdmi.dtb Device tree blob for SD, eMMC and HDMI display configuration. WIFI disabled.
imx8m-var-dart-sd-emmc-hdmi-4k.dtb Device tree blob for SD, eMMC and HDMI 4K display configuration. WIFI disabled.
imx8m-var-dart-sd-emmc-dcss-lvds.dtb Device tree blob for SD, eMMC and DCSS LVDS display configuration. WIFI disabled.
imx8m-var-dart-sd-emmc-lcdif-lvds.dtb Device tree blob for SD, eMMC and LCDIF LVDS display configuration. WIFI disabled.
imx8m-var-dart-sd-emmc-dual-display.dtb Device tree blob for SD, eMMC and dual LVDS+HDMI display configuration. WIFI disabled.


DTB File Name
Description
fsl-imx8mq-var-dart-emmc-wifi-hdmi.dtb Device tree blob for eMMC, WIFI and HDMI display configuration. SD card disabled.
fsl-imx8mq-var-dart-emmc-wifi-lvds.dtb Device tree blob for eMMC, WIFI and LVDS display configuration. SD card disabled.
fsl-imx8mq-var-dart-emmc-wifi-dual-display.dtb Device tree blob for eMMC, WIFI and dual LVDS+HDMI display configuration. SD card disabled.
fsl-imx8mq-var-dart-sd-emmc-hdmi.dtb Device tree blob for SD, eMMC and HDMI display configuration. WIFI disabled.
fsl-imx8mq-var-dart-sd-emmc-lvds.dtb Device tree blob for SD, eMMC and LVDS display configuration. WIFI disabled.
fsl-imx8mq-var-dart-sd-emmc-dual-display.dtb Device tree blob for SD, eMMC and dual LVDS+HDMI display configuration. WIFI disabled.


DTB File Name
Description
fsl-imx8mq-var-dart-sd-dp.dtb Device tree blob for eMMC, SD and DP display configuration. WIFI disabled.
fsl-imx8mq-var-dart-sd-hdmi.dtb Device tree blob for eMMC, SD and HDMI display configuration. WIFI disabled.
fsl-imx8mq-var-dart-sd-lvds.dtb Device tree blob for eMMC, SD and LVDS display configuration. WIFI disabled.
fsl-imx8mq-var-dart-sd-lvds-dp.dtb Device tree blob for eMMC, SD and dual LVDS+DP display configuration. WIFI disabled.
fsl-imx8mq-var-dart-sd-lvds-hdmi.dtb Device tree blob for eMMC, SD and dual LVDS+HDMI display configuration. WIFI disabled.
fsl-imx8mq-var-dart-wifi-dp.dtb Device tree blob for eMMC, WIFI and DP display configuration. SD card disabled.
fsl-imx8mq-var-dart-wifi-hdmi.dtb Device tree blob for eMMC, WIFI and HDMI display configuration. SD card disabled.
fsl-imx8mq-var-dart-wifi-lvds.dtb Device tree blob for eMMC, WIFI and LVDS display configuration. SD card disabled.
fsl-imx8mq-var-dart-wifi-lvds-dp.dtb Device tree blob for eMMC, WIFI and dual LVDS+DP display configuration. SD card disabled.
fsl-imx8mq-var-dart-wifi-lvds-hdmi.dtb Device tree blob for eMMC, WIFI and dual LVDS+HDMI display configuration. SD card disabled.
fsl-imx8mq-var-dart-m4-sd-dp.dtb Device tree blob for eMMC, SD and DP display configuration. WIFI disabled.
fsl-imx8mq-var-dart-m4-sd-hdmi.dtb Device tree blob for M4, eMMC, SD and HDMI display configuration. WIFI disabled.
fsl-imx8mq-var-dart-m4-sd-lvds.dtb Device tree blob for M4, eMMC, SD and LVDS display configuration. WIFI disabled.
fsl-imx8mq-var-dart-m4-sd-lvds-dp.dtb Device tree blob for M4, eMMC, SD and dual LVDS+DP display configuration. WIFI disabled.
fsl-imx8mq-var-dart-m4-sd-lvds-hdmi.dtb Device tree blob for M4, eMMC, SD and dual LVDS+HDMI display configuration. WIFI disabled.
fsl-imx8mq-var-dart-m4-wifi-dp.dtb Device tree blob for M4, eMMC, WIFI and DP display configuration. SD card disabled.
fsl-imx8mq-var-dart-m4-wifi-hdmi.dtb Device tree blob for M4, eMMC, WIFI and HDMI display configuration. SD card disabled.
fsl-imx8mq-var-dart-m4-wifi-lvds.dtb Device tree blob for M4, eMMC, WIFI and LVDS display configuration. SD card disabled.
fsl-imx8mq-var-dart-m4-wifi-lvds-dp.dtb Device tree blob for M4, eMMC, WIFI and dual LVDS+DP display configuration. SD card disabled.
fsl-imx8mq-var-dart-m4-wifi-lvds-hdmi.dtb Device tree blob for M4, eMMC, WIFI and dual LVDS+HDMI display configuration. SD card disabled.


DTB File Name
Description
imx8mq-var-dart-dt8mcustomboard-sd-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with SD card and HDMI display.
imx8mq-var-dart-dt8mcustomboard-sd-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with SD card and LVDS display.
imx8mq-var-dart-dt8mcustomboard-sd-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with SD card and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-wifi-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with WIFI and HDMI display.
imx8mq-var-dart-dt8mcustomboard-wifi-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with WIFI and LVDS display.
imx8mq-var-dart-dt8mcustomboard-wifi-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with WIFI and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-m4-sd-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with M4, SD card and HDMI display.
imx8mq-var-dart-dt8mcustomboard-m4-sd-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with M4, SD card and LVDS display.
imx8mq-var-dart-dt8mcustomboard-m4-sd-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with M4, SD card and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-m4-wifi-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with M4, WIFI and HDMI display.
imx8mq-var-dart-dt8mcustomboard-m4-wifi-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with M4, WIFI and LVDS display.
imx8mq-var-dart-dt8mcustomboard-m4-wifi-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V2.x and above with M4, WIFI and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-sd-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with SD card and DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-sd-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with SD card and HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-sd-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with SD card and LVDS display.
imx8mq-var-dart-dt8mcustomboard-legacy-sd-lvds-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with SD card and dual LVDS+DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-sd-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with SD card and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-wifi-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with WIFI and DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-wifi-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with WIFI and HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-wifi-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with WIFI and LVDS display.
imx8mq-var-dart-dt8mcustomboard-legacy-wifi-lvds-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with WIFI and dual LVDS+DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-wifi-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with WIFI and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-sd-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, SD card and DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-sd-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, SD card and HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-sd-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, SD card and LVDS display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-sd-lvds-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, SD card and dual LVDS+DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-sd-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, SD card and dual LVDS+HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-wifi-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, WIFI and DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-wifi-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, WIFI and HDMI display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-wifi-lvds.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, WIFI and LVDS display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-wifi-lvds-dp.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, WIFI and dual LVDS+DP display.
imx8mq-var-dart-dt8mcustomboard-legacy-m4-wifi-lvds-hdmi.dtb DTB for DART-MX8M on DT8MCustomBoard V1.3/V1.4 with M4, WIFI and dual LVDS+HDMI display.


Setting the Boot Mode

Make sure the BOOT SELECT DIP switch on the carrier board is set correctly before you power on the board.

SW7
 0 : Boot from SD card
 1 : Boot from eMMC


DART-MX8M-MINI

Build Results

Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
fsl-imx8mm-var-dart.dtb Device tree blob for DART-MX8M-MINI
fsl-imx8mm-var-som.dtb Device tree blob for VAR-SOM-MX8M-MINI
fsl-imx8mm-var-som-rev10.dtb Device tree blob for VAR-SOM-MX8M-MINI Rev 1.0


Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
Expression error: Unexpected > operator. Device tree blob for DART-MX8M-MINI
Expression error: Unexpected > operator. Device tree blob for VAR-SOM-MX8M-MINI
Expression error: Unexpected > operator. Device tree blob for VAR-SOM-MX8M-MINI Rev 1.0


Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx8mm-var-dart-customboard.dtb Device tree blob for DART-MX8M-MINI on DT8MCustomBoard
imx8mm-var-dart-customboard-m4.dtb Device tree blob for DART-MX8M-MINI with Cortex-M4 on DT8MCustomBoard
imx8mm-var-som-symphony.dtb Device tree blob for VAR-SOM-MX8M-MINI on Symphony-Board V1.4A and above
imx8mm-var-som-symphony-m4.dtb Device tree blob for VAR-SOM-MX8M-MINI with Cortex-M4 on Symphony-Board V1.4A and above
imx8mm-var-som-symphony-legacy.dtb Device tree blob for VAR-SOM-MX8M-MINI on Symphony-Board V1.4 and below
imx8mm-var-som-symphony-legacy-m4.dtb Device tree blob for VAR-SOM-MX8M-MINI with Cortex-M4 on Symphony-Board V1.4 and below


Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx8mm-var-dart-dt8mcustomboard.dtb Device tree blob for DART-MX8M-MINI on DT8MCustomBoard V2.x and above
imx8mm-var-dart-dt8mcustomboard-m4.dtb Device tree blob for DART-MX8M-MINI with Cortex-M4 on DT8MCustomBoard V2.x and above
imx8mm-var-dart-dt8mcustomboard-legacy.dtb Device tree blob for DART-MX8M-MINI on DT8MCustomBoard V1.x
imx8mm-var-dart-dt8mcustomboard-legacy-m4.dtb Device tree blob for DART-MX8M-MINI with Cortex-M4 on DT8MCustomBoard V1.x
imx8mm-var-som-symphony.dtb Device tree blob for VAR-SOM-MX8M-MINI on Symphony-Board V1.4A and above
imx8mm-var-som-symphony-m4.dtb Device tree blob for VAR-SOM-MX8M-MINI with Cortex-M4 on Symphony-Board V1.4A and above
imx8mm-var-som-symphony-legacy.dtb Device tree blob for VAR-SOM-MX8M-MINI on Symphony-Board V1.4 and below
imx8mm-var-som-symphony-legacy-m4.dtb Device tree blob for VAR-SOM-MX8M-MINI with Cortex-M4 on Symphony-Board V1.4 and below


Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx8mm-var-dart-dt8mcustomboard.dtb Device tree blob for DART-MX8M-MINI on DT8MCustomBoard V2.x and above
imx8mm-var-dart-dt8mcustomboard-m4.dtb Device tree blob for DART-MX8M-MINI with Cortex-M4 on DT8MCustomBoard V2.x and above
imx8mm-var-dart-dt8mcustomboard-legacy.dtb Device tree blob for DART-MX8M-MINI on DT8MCustomBoard V1.x
imx8mm-var-dart-dt8mcustomboard-legacy-m4.dtb Device tree blob for DART-MX8M-MINI with Cortex-M4 on DT8MCustomBoard V1.x
imx8mm-var-som-symphony.dtb Device tree blob for VAR-SOM-MX8M-MINI on Symphony-Board
imx8mm-var-som-symphony-m4.dtb Device tree blob for VAR-SOM-MX8M-MINI with Cortex-M4 on Symphony-Board


Device tree

Build only the device tree for DART-MX8M-MINI:
$ make -j4 freescale/fsl-imx8mm-var-dart.dtb

Build only the device tree for VAR-SOM-MX8M-MINI:
$ make -j4 freescale/fsl-imx8mm-var-var-som.dtb

Build only the device tree for VAR-SOM-MX8M-MINI Rev 1.0:
$ make -j4 freescale/fsl-imx8mm-var-var-som-rev10.dtb


Build only the device tree for DART-MX8M-MINI:
$ make -j4 freescale/imx8mm-var-dart.dtb

Build only the device tree for VAR-SOM-MX8M-MINI:
$ make -j4 freescale/imx8mm-var-som.dtb

Build only the device tree for VAR-SOM-MX8M-MINI Rev 1.0:
$ make -j4 freescale/imx8mm-var-som-rev10.dtb


Build only the device tree for DART-MX8M-MINI:
$ make -j4 freescale/imx8mm-var-dart-customboard.dtb

Build only the device tree for VAR-SOM-MX8M-MINI:
$ make -j4 freescale/imx8mm-var-som-symphony.dtb

Build only the device tree for VAR-SOM-MX8M-MINI Rev 1.0:
$ make -j4 freescale/imx8mm-var-som-rev10-symphony.dtb


Build only the device tree for DART-MX8M-MINI on DT8MCustomBoard:
$ make -j4 freescale/imx8mm-var-dart-customboard.dtb

Build only the device tree for DART-MX8M-MINI with Cortex-M4 on DT8MCustomBoard:
$ make -j4 freescale/imx8mm-var-dart-customboard-m4.dtb

Build only the device tree for VAR-SOM-MX8M-MINI on Symphony-Board V1.4A and above:
$ make -j4 freescale/imx8mm-var-som-symphony.dtb

Build only the device tree for VAR-SOM-MX8M-MINI with Cortex-M4 on Symphony-Board V1.4A and above:
$ make -j4 freescale/imx8mm-var-som-symphony-m4.dtb

Build only the device tree for VAR-SOM-MX8M-MINI on Symphony-Board V1.4 and below:
$ make -j4 freescale/imx8mm-var-som-symphony-legacy.dtb

Build only the device tree for VAR-SOM-MX8M-MINI with Cortex-M4 on Symphony-Board V1.4 and below:
$ make -j4 freescale/imx8mm-var-som-symphony-legacy-m4.dtb


Build only the device tree for DART-MX8M-MINI on DT8MCustomBoard V2.x and above:
$ make -j4 freescale/imx8mm-var-dart-dt8mcustomboard.dtb

Build only the device tree for DART-MX8M-MINI on with Cortex-M4 DT8MCustomBoard V2.x and above:
$ make -j4 freescale/imx8mm-var-dart-dt8mcustomboard-m4.dtb

Build only the device tree for DART-MX8M-MINI on DT8MCustomBoard V1.x:
$ make -j4 freescale/imx8mm-var-dart-dt8mcustomboard-legacy.dtb

Build only the device tree for DART-MX8M-MINI on with Cortex-M4 DT8MCustomBoard V1.x:
$ make -j4 freescale/imx8mm-var-dart-dt8mcustomboard-legacy-m4.dtb

Build only the device tree for VAR-SOM-MX8M-MINI on Symphony-Board V1.4A and above:
$ make -j4 freescale/imx8mm-var-som-symphony.dtb

Build only the device tree for VAR-SOM-MX8M-MINI with Cortex-M4 on Symphony-Board V1.4A and above:
$ make -j4 freescale/imx8mm-var-som-symphony-m4.dtb

Build only the device tree for VAR-SOM-MX8M-MINI on Symphony-Board V1.4 and below:
$ make -j4 freescale/imx8mm-var-som-symphony-legacy.dtb

Build only the device tree for VAR-SOM-MX8M-MINI with Cortex-M4 on Symphony-Board V1.4 and below:
$ make -j4 freescale/imx8mm-var-som-symphony-legacy-m4.dtb


Build only the device tree for DART-MX8M-MINI on DT8MCustomBoard V2.x and above:
$ make -j4 freescale/imx8mm-var-dart-dt8mcustomboard.dtb

Build only the device tree for DART-MX8M-MINI on with Cortex-M4 DT8MCustomBoard V2.x and above:
$ make -j4 freescale/imx8mm-var-dart-dt8mcustomboard-m4.dtb

Build only the device tree for DART-MX8M-MINI on DT8MCustomBoard V1.x:
$ make -j4 freescale/imx8mm-var-dart-dt8mcustomboard-legacy.dtb

Build only the device tree for DART-MX8M-MINI on with Cortex-M4 DT8MCustomBoard V1.x:
$ make -j4 freescale/imx8mm-var-dart-dt8mcustomboard-legacy-m4.dtb

Build only the device tree for VAR-SOM-MX8M-MINI on Symphony-Board:
$ make -j4 freescale/imx8mm-var-som-symphony.dtb

Build only the device tree for VAR-SOM-MX8M-MINI with Cortex-M4 on Symphony-Board:
$ make -j4 freescale/imx8mm-var-som-symphony-m4.dtb


SD card image file tree

/opt/images/
└── Yocto
    ├── imx-boot-sd.bin
    └── rootfs.tar.gz


Setting the Boot Mode

Make sure the BOOT SELECT DIP switch on the carrier board is set correctly before you power on the board.

SW7
 0 : Boot from SD card
 1 : Boot from eMMC


VAR-SOM-MX93

Build Results

Template:MX93 BUILD RESULTS V1



Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx93-var-som-symphony.dtb Device tree for VAR-SOM-MX93 on Symphony-Board
imx93-var-som-symphony-ld.dtb Device tree for VAR-SOM-MX93 with Low Drive mode on Symphony-Board
imx93-var-som-wbe-symphony.dtb Device tree for VAR-SOM-MX93 with WBE support on Symphony-Board
imx93-var-som-wbe-symphony-ld.dtb Device tree for VAR-SOM-MX93 with Low Drive mode, and WBE support on Symphony-Board
imx93-var-som-symphony-m33.dtb Device tree for VAR-SOM-MX93 with Cortex-M33 on Symphony-Board



Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx93-var-som-symphony.dtb Device tree for VAR-SOM-MX93 on Symphony-Board
imx93-var-som-symphony-ld.dtb Device tree for VAR-SOM-MX93 with Low Drive mode on Symphony-Board
imx93-var-som-wbe-symphony.dtb Device tree for VAR-SOM-MX93 with WBE support on Symphony-Board
imx93-var-som-wbe-symphony-ld.dtb Device tree for VAR-SOM-MX93 with Low Drive mode, and WBE support on Symphony-Board
imx93-var-som-symphony-m33.dtb Device tree for VAR-SOM-MX93 with Cortex-M33 on Symphony-Board
imx93-var-dart-dt8mcustomboard.dtb Device tree for DART-MX93 on DT8MCustomBoard
imx93-var-dart-dt8mcustomboard.dtb Device tree for DART-MX93 with Low Drive mode, and WBE support on DT8MCustomBoard


DART-MX95

Build Results

Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx95-var-dart-dt8mcustomboard.dtb Device tree for DART-MX95 on DT8MCustomBoard


MX95 Device tree v1

Build only the device tree for DART-MX95 on Symphony-Board:
$ make -j4 freescale/imx95-var-dart-dt8mcustomboard.dtb


VAR-SOM-MX8M-NANO

Build Results

Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
Image.gz-fsl-imx8mn-var-som.dtb Device tree blob for SD, eMMC, WIFI and LVDS display configuration.


Build Results v2

Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
Image.gz-fsl-imx8mn-var-som.dtb Device tree blob for SD, eMMC, WIFI and LVDS display configuration.
Image.gz-fsl-imx8mn-var-som-rev10.dtb Device tree blob for SD, eMMC, WIFI and LVDS display configuration rev 1.0.
Image.gz-fsl-imx8mn-var-som-m7.dtb Device tree blob for M7, SD, eMMC, WIFI and LVDS display configuration.
Image.gz-fsl-imx8mn-var-som-rev10-m7.dtb Device tree blob for M7, SD, eMMC, WIFI and LVDS display configuration rev 1.0.


Build Results v3

Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx8mn-var-som.dtb Device tree blob for SD, eMMC, WIFI and LVDS display configuration.
imx8mn-var-som.dtb Device tree blob for SD, eMMC, WIFI and LVDS display configuration rev 1.0.


Build Results v4

Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx8mn-var-som-symphony.dtb Device tree for VAR-SOM-MX8M-MINI on Symphony-Board V1.4A and above
imx8mn-var-som-symphony-m7.dtb Device tree for VAR-SOM-MX8M-MINI with Cortex-M7 on Symphony-Board V1.4A and above
imx8mn-var-som-symphony-legacy.dtb Device tree for VAR-SOM-MX8M-MINI on Symphony-Board V1.4 and below
imx8mn-var-som-symphony-legacy-m7.dtb Device tree for VAR-SOM-MX8M-MINI with Cortex-M7 on Symphony-Board V1.4 and below


Build Results v5

Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx8mn-var-som-symphony.dtb Device tree for VAR-SOM-MX8M-NANO on Symphony-Board
imx8mn-var-som-symphony-m7.dtb Device tree for VAR-SOM-MX8M-NANO with Cortex-M7 on Symphony-Board


Device tree

Build only the device tree for VAR-SOM-MX8M-NANO:
$ make -j4 freescale/fsl-imx8mn-var-som.dtb


Device tree v2

Build only the device tree for VAR-SOM-MX8M-NANO:
$ make -j4 freescale/fsl-imx8mn-var-som.dtb

Build only the device tree for VAR-SOM-MX8M-NANO rev 1.0:
$ make -j4 freescale/fsl-imx8mn-var-som-rev10.dtb

Build only the device tree for VAR-SOM-MX8M-NANO with Cortex-M7:
$ make -j4 freescale/fsl-imx8mn-var-som-m7.dtb

Build only the device tree for VAR-SOM-MX8M-NANO rev 1.0 with Cortex-M7:
$ make -j4 freescale/fsl-imx8mn-var-som-rev10-m7.dtb


Device tree v3

Build only the device tree for VAR-SOM-MX8M-NANO:
$ make -j4 freescale/imx8mn-var-som.dtb

Build only the device tree for VAR-SOM-MX8M-NANO rev 1.0:
$ make -j4 freescale/imx8mn-var-som-rev10.dtb


Device tree v4

Build only the device tree for VAR-SOM-MX8M-NANO:
$ make -j4 freescale/imx8mn-var-som-symphony.dtb

Build only the device tree for VAR-SOM-MX8M-NANO rev 1.0:
$ make -j4 freescale/imx8mn-var-som-rev10-symphony.dtb


Device tree v5

Build only the device tree for VAR-SOM-MX8M-NANO on Symphony-Board V1.4A and above:
$ make -j4 freescale/imx8mn-var-som-symphony.dtb

Build only the device tree for VAR-SOM-MX8M-NANO with Cortex-M7 on Symphony-Board V1.4A and above:
$ make -j4 freescale/imx8mn-var-som-symphony-m7.dtb

Build only the device tree for VAR-SOM-MX8M-NANO on Symphony-Board V1.4 and below:
$ make -j4 freescale/imx8mn-var-som-symphony-legacy.dtb

Build only the device tree for VAR-SOM-MX8M-NANO with Cortex-M7 on Symphony-Board V1.4 and below:
$ make -j4 freescale/imx8mn-var-som-symphony-legacy-m7.dtb


Device tree v6

Build only the device tree for VAR-SOM-MX8M-NANO on Symphony-Board:
$ make -j4 freescale/imx8mn-var-som-symphony.dtb

Build only the device tree for VAR-SOM-MX8M-NANO with Cortex-M7 on Symphony-Board:
$ make -j4 freescale/imx8mn-var-som-symphony-m7.dtb


SD card image file tree

/opt/images/
└── Yocto
    ├── imx-boot-sd.bin
    └── rootfs.tar.gz


SD card image file tree AM62

/opt/images/
└── Yocto
    └── rootfs.tar.zst
    └── boot
        └── tiboot3.bin
        └── uEnv.txt
        └── tispl.bin
        └── u-boot.img


SD card image file tree AM33

/opt/images/
└── Yocto
    └── rootfs.ubi
    └── boot
        └── MLO-nand
        └── u-boot.img-nand
        └── var-som-am33.dtb
        └── zImage


Setting the Boot Mode

Make sure the BOOT SELECT DIP switch on the carrier board is set correctly before you power on the board.

SW3
 0 : Boot from SD card
 1 : Boot from eMMC


MX93 Device tree v1

Build only the device tree for VAR-SOM-MX93 on Symphony-Board:
$ make -j4 freescale/imx93-var-som-symphony.dtb


Build only the device tree for VAR-SOM-MX93 on Symphony-Board:
$ make -j4 freescale/imx93-var-som-symphony.dtb

Build only the device tree for VAR-SOM-MX93 with Low Drive mode on Symphony-Board:
$ make -j4 freescale/imx93-var-som-symphony-ld.dtb

Build only the device tree for VAR-SOM-MX93 with WBE support on Symphony-Board:
$ make -j4 freescale/imx93-var-som-wbe-symphony.dtb

Build only the device tree for VAR-SOM-MX93 with Low Drive mode, and WBE support on Symphony-Board:
$ make -j4 freescale/imx93-var-som-wbe-symphony-ld.dtb

Build only the device tree for VAR-SOM-MX93 with Cortex-M33 on Symphony-Board:
$ make -j4 freescale/imx93-var-som-symphony-m33.dtb


Build only the device tree for VAR-SOM-MX93 on Symphony-Board:
$ make -j4 freescale/imx93-var-som-symphony.dtb

Build only the device tree for VAR-SOM-MX93 with Low Drive mode on Symphony-Board:
$ make -j4 freescale/imx93-var-som-symphony-ld.dtb

Build only the device tree for VAR-SOM-MX93 with WBE support on Symphony-Board:
$ make -j4 freescale/imx93-var-som-wbe-symphony.dtb

Build only the device tree for VAR-SOM-MX93 with Low Drive mode, and WBE support on Symphony-Board:
$ make -j4 freescale/imx93-var-som-wbe-symphony-ld.dtb

Build only the device tree for VAR-SOM-MX93 with Cortex-M33 on Symphony-Board:
$ make -j4 freescale/imx93-var-som-symphony-m33.dtb

Build only the device tree for DART-MX93 on DT8MCustomBoard:
$ make -j4 freescale/imx93-var-dart-dt8mcustomboard.dtb

Build only the device tree for DART-MX93 with Low Drive mode on DT8MCustomBoard:
$ make -j4 freescale/imx93-var-dart-dt8mcustomboard-ld.dtb


DART-MX8M-PLUS

Basler Camera

local.conf for Zeus 2.3.0

IMAGE_INSTALL_append = " \
	basler-camera-driver \
	pylon \
	python3-pypylon \
	gentl-producer \
	kernel-module-isp-vvcam \
	imx8mp-modprobe-config \
	basler-camera \
	isp-imx \
	xauth \
"
PREFERRED_VERSION_isp-imx                 = "4.2.2.8+basler"
PREFERRED_VERSION_basler-camera           = "4.2.2.8+basler"
PREFERRED_VERSION_kernel-module-isp-vvcam = "4.2.2.8+basler"


local.conf for Zeus 2.3.2

IMAGE_INSTALL_append = " \
	kernel-module-basler-camera \
	pylon \
	python3-pypylon \
	gentl-producer \
	kernel-module-isp-vvcam \
	imx8mp-modprobe-config \
	basler-camera \
	isp-imx \
	xauth \
"
PREFERRED_VERSION_isp-imx                 = "4.2.2.13+basler"
PREFERRED_VERSION_basler-camera           = "4.2.2.13+basler"
PREFERRED_VERSION_kernel-module-isp-vvcam = "4.2.2.13+basler"


local.conf for Hardknott

IMAGE_INSTALL_append = " \
       pylon \
       python3-pypylon \
       gentl-producer \
       xauth \
       kernel-module-basler-camera \
"
IMAGE_INSTALL_append_mx8mp = " \
       imx8mp-modprobe-config \
       kernel-module-isp-vvcam \
       isp-imx \
       basler-camera \
"
PREFERRED_VERSION_isp-imx                 = "4.2.2.14+basler"
PREFERRED_VERSION_basler-camera           = "4.2.2.14+basler"
PREFERRED_VERSION_kernel-module-isp-vvcam = "4.2.2.14+basler"


local.conf for Hardknott with NXP support

IMAGE_INSTALL_append_mx8mp = " \
       kernel-module-isp-vvcam \
       isp-imx \
       basler-camera \
"


Gestreamer for Zeus 2.3.0

The following commands apply to VCAM-AR0821B (daA3840-mc) only.
Run the following command at the shell prompt:

$ gst-launch-1.0 -v v4l2src device=/dev/video0 ! waylandsink sync=false


Gestreamer for Zeus 2.3.2

The following commands apply to VCAM-AR0821B (daA3840-mc) only.
Run the following commands at the shell prompt:

  • 1920x1080@30fps:
# gst-launch-1.0 -v v4l2src device=/dev/video0 ! "video/x-raw,format=YUY2,width=1920,height=1080" ! waylandsink sync=false
  • 3840x2160@30fps:
# gst-launch-1.0 -v v4l2src device=/dev/video0 ! "video/x-raw,format=YUY2,width=3840,height=2160" ! waylandsink sync=false


Gestreamer for Kirkstone

Using the Basler gst-plugin-pylon plugin

Gstreamer is supported with Basler cameras by the Basler gst-plugin-pylon plugin.
This plugin is already installed in any Basler-compatible Yocto image, either prebuilt or built as described above.
To display the video stream run the following command at the shell prompt:

# gst-launch-1.0 pylonsrc ! videoconvert ! autovideosink

For further information, see: https://github.com/basler/gst-plugin-pylon

Using the v4l2-compatible video source

For VCAM-AR0821B (daA3840-mc) and VCAM-AR0521B (daA2500-60mc), a v4l2-compatible video source is also available.
To display the video stream in this mode, run the following commands at the shell prompt:

  • 1920x1080@30fps:
# gst-launch-1.0 -v v4l2src device=/dev/video2 ! "video/x-raw,format=YUY2,width=1920,height=1080" ! waylandsink sync=false
  • 3840x2160@30fps:
# gst-launch-1.0 -v v4l2src device=/dev/video2 ! "video/x-raw,format=YUY2,width=3840,height=2160" ! waylandsink sync=false


Gstreamer is supported with Basler cameras by the Basler gst-plugin-pylon plugin.
This plugin is already installed in any Basler-compatible Yocto image, either prebuilt or built as described above.
To display the video stream run the following command at the shell prompt:

# gst-launch-1.0 pylonsrc ! videoconvert ! autovideosink

For further information, see: https://github.com/basler/gst-plugin-pylon


Switch cameras for Hardknott

# cd /boot
# ln -fs imx8mp-var-dart-dt8mcustomboard-basler-isp0.dtb imx8mp-var-dart-dt8mcustomboard.dtb
# ln -fs imx8mp-var-dart-dt8mcustomboard-legacy-basler-isp0.dtb imx8mp-var-dart-dt8mcustomboard-legacy.dtb
# ln -fs imx8mp-var-som-symphony-basler-isp0.dtb imx8mp-var-som-symphony.dtb

To switch back run the following commands at the shell prompt:

# cd /boot
# ln -fs imx8mp-var-dart-dt8mcustomboard-basler-isi0.dtb imx8mp-var-dart-dt8mcustomboard.dtb
# ln -fs imx8mp-var-dart-dt8mcustomboard-legacy-basler-isi0.dtb imx8mp-var-dart-dt8mcustomboard-legacy.dtb
# ln -fs imx8mp-var-som-symphony-basler-isi0.dtb imx8mp-var-som-symphony.dtb


Switch cameras for Hardknott with NXP support

# cd /boot
# mv imx8mp-var-dart-dt8mcustomboard.dtb imx8mp-var-dart-dt8mcustomboard-ov5640.dtb
# mv imx8mp-var-dart-dt8mcustomboard-legacy.dtb imx8mp-var-dart-dt8mcustomboard-legacy-ov5640.dtb
# mv imx8mp-var-som-symphony.dtb imx8mp-var-som-symphony-ov5640.dtb
# ln -fs imx8mp-var-dart-dt8mcustomboard-basler-isp0.dtb imx8mp-var-dart-dt8mcustomboard.dtb
# ln -fs imx8mp-var-dart-dt8mcustomboard-legacy-basler-isp0.dtb imx8mp-var-dart-dt8mcustomboard-legacy.dtb
# ln -fs imx8mp-var-som-symphony-basler-isp0.dtb imx8mp-var-som-symphony.dtb


Gestreamer for Hardknott with NXP support

$ gst-launch-1.0 -v v4l2src device=/dev/video0 ! waylandsink


Gestreamer for Kirkstone with NXP support

$ gst-launch-1.0 -v v4l2src device=/dev/video2 ! waylandsink


Gestreamer for Kirkstone with NXP support and dual-camera enabled

# gst-launch-1.0 -v v4l2src device=/dev/video2 ! waylandsink

On boards with 2 cameras you can use the 2nd camera by replacing /dev/video2 with /dev/video3 in the above command. Dual camera currently can only work on VAR-DT8MCustomBoard due to hardware limitations of Symphony board.
The following command will simultaneously record two video streams from both cameras:

# gst-launch-1.0 v4l2src device=/dev/video2 num-buffers=100 ! video/x-raw,width=1920,height=1080 ! vpuenc_h264 ! avimux ! filesink location=./test0_h264.avi \
                 v4l2src device=/dev/video3 num-buffers=100 ! video/x-raw,width=1920,height=1080 ! vpuenc_h264 ! avimux ! filesink location=./test1_h264.avi


Build Results

Image Name
How to use
fsl-image-gui-.wic.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx8mp-var-dart.dtb Device tree blob for DART-MX8M-PLUS
imx8mp-var-som.dtb Device tree blob for VAR-SOM-MX8M-PLUS
imx8mp-var-som-ov5640.dtb Device tree blob for VAR-SOM-MX8M-PLUS with a 2nd OV5640 camera


Image Name
How to use
fsl-image-gui-.wic.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx8mp-var-dart-dt8mcustomboard.dtb Device tree blob for DART-MX8M-PLUS on DT8MCustomBoard V2.x and above
imx8mp-var-dart-dt8mcustomboard-legacy.dtb Device tree blob for DART-MX8M-PLUS on DT8MCustomBoard V1.x
imx8mp-var-som-symphony.dtb Device tree blob for VAR-SOM-MX8M-PLUS on Symphony-Board
imx8mp-var-som-symphony-2nd-ov5640.dtb Device tree blob for VAR-SOM-MX8M-PLUS on Symphony-Board with a 2nd OV5640 camera
imx8mp-var-dart-dt8mcustomboard-m7.dtb Device tree blob for DART-MX8M-PLUS with Cortex-M7 on DT8MCustomBoard V2.x and above
imx8mp-var-dart-dt8mcustomboard-legacy-m7.dtb Device tree blob for DART-MX8M-PLUS with Cortex-M7 on DT8MCustomBoard V1.x
imx8mp-var-som-symphony-m7.dtb Device tree blob for VAR-SOM-MX8M-PLUS with Cortex-M7 on Symphony-Board
imx8mp-var-som-symphony-2nd-ov5640-m7.dtb Device tree blob for VAR-SOM-MX8M-PLUS with Cortex-M7 on Symphony-Board with a 2nd OV5640 camera


Device tree

Build only the device tree for DART-MX8M-PLUS:
$ make -j4 freescale/imx8mp-var-dart.dtb

Build only the device tree for VAR-SOM-MX8M-PLUS:
$ make -j4 freescale/imx8mp-var-som.dtb

Build only the device tree for VAR-SOM-MX8M-PLUS with second OV5640 camera:
$ make -j4 freescale/imx8mp-var-som-ov5640.dtb


Build only the device tree for DART-MX8M-PLUS on DT8MCustomBoard V2.x and above:
$ make -j4 freescale/imx8mp-var-dart-dt8mcustomboard.dtb

Build only the device tree for DART-MX8M-PLUS on DT8MCustomBoard V1.x:
$ make -j4 freescale/imx8mp-var-dart-dt8mcustomboard-legacy.dtb

Build only the device tree for VAR-SOM-MX8M-PLUS on Symphony-Board:
$ make -j4 freescale/imx8mp-var-som-symphony.dtb

Build only the device tree for VAR-SOM-MX8M-PLUS on Symphony-Board with a 2nd OV5640 camera:
$ make -j4 freescale/imx8mp-var-som-symphony-2nd-ov5640.dtb


SD card image file tree

/opt/images/
└── Yocto
    ├── imx-boot-sd.bin
    └── rootfs.tar.gz


Setting the Boot Mode

Make sure the BOOT SELECT DIP switch on the carrier board is set correctly before you power on the board.

SW7
 0 : Boot from SD card
 1 : Boot from eMMC


VAR-SOM-MX8X

Build Results

Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
DTB File Name
Description
fsl-imx8qxp-var-som-wifi.dtb Device tree blob for WIFI configuration. SD card disabled.
fsl-imx8qxp-var-som-sd.dtb Device tree blob for SD configuration. WIFI disabled.


Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
DTB File Name
Description
imx8qxp-var-som-symphony-wifi.dtb Device tree blob for WIFI configuration. SD card disabled.
imx8qxp-var-som-symphony-wifi-m4.dtb Device tree blob for WIFI configuration, with Cortex-M4 support. SD card disabled.
imx8qxp-var-som-symphony-sd.dtb Device tree blob for SD configuration. WIFI disabled.
imx8qxp-var-som-symphony-sd-m4.dtb Device tree blob for SD configuration, with Cortex-M4 support. WIFI disabled.


Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
DTB File Name
Description
fsl-imx8qxp-var-som-wifi.dtb Device tree blob for WIFI configuration. SD card disabled.
fsl-imx8qxp-var-som-sd.dtb Device tree blob for SD configuration. WIFI disabled.


Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
DTB File Name
Description
imx8qxp-var-som-symphony-wifi.dtb Device tree blob for WIFI configuration. SD card disabled.
imx8qxp-var-som-symphony-wifi-m4.dtb Device tree blob for WIFI configuration, with Cortex-M4 support. SD card disabled.
imx8qxp-var-som-symphony-sd.dtb Device tree blob for SD configuration. WIFI disabled.
imx8qxp-var-som-symphony-sd-m4.dtb Device tree blob for SD configuration, with Cortex-M4 support. WIFI disabled.


Device tree

Build only the device tree for VAR-SOM-MX8X WIFI configuration:
$ make -j4 freescale/fsl-imx8qxp-var-som-wifi.dtb

Build only the device tree for VAR-SOM-MX8X SD configuration:
$ make -j4 freescale/fsl-imx8qxp-var-som-sd.dtb


Build only the device tree for VAR-SOM-MX8X WIFI configuration:
$ make -j4 freescale/imx8qxp-var-som-symphony-wifi.dtb

Build only the device tree for VAR-SOM-MX8X SD configuration:
$ make -j4 freescale/imx8qxp-var-som-symphony-sd.dtb


SD card image file tree

/opt/images/
└── Yocto
    ├── imx-boot-sd.bin
    └── rootfs.tar.gz


Setting the Boot Mode

Make sure the BOOT SELECT DIP switch on the carrier board is set correctly before you power on the board.

SW3
 0 : Boot from SD card
 1 : Boot from eMMC (Internal)


VAR-SOM-MX8

Build Results

Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
Image.gz-fsl-imx8qm-var-som-dp.dtb DTB file for VAR-SOM-MX8 with DP display
Image.gz-fsl-imx8qm-var-som-hdmi.dtb DTB file for VAR-SOM-MX8 with HDMI display
Image.gz-fsl-imx8qm-var-som-lvds.dtb DTB file for VAR-SOM-MX8 with LVDS display
Image.gz-fsl-imx8qm-var-spear-dp.dtb DTB file for SPEAR-MX8 with DP display
Image.gz-fsl-imx8qm-var-spear-hdmi.dtb DTB file for SPEAR-MX8 with HDMI display
Image.gz-fsl-imx8qm-var-spear-lvds.dtb DTB file for SPEAR-MX8 with LVDS display

Similar device trees with "imx8qp-" instead of "imx8qm-" are also generated, for SOMs with the i.MX8QP variant of the SoC.


Build Results v2

Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx8qm-var-som-dp.dtb DTB file for VAR-SOM-MX8 with DP display
imx8qm-var-som-hdmi.dtb DTB file for VAR-SOM-MX8 with HDMI display
imx8qm-var-som-lvds.dtb DTB file for VAR-SOM-MX8 with LVDS display
imx8qm-var-spear-dp.dtb DTB file for SPEAR-MX8 with DP display
imx8qm-var-spear-hdmi.dtb DTB file for SPEAR-MX8 with HDMI display
imx8qm-var-spear-lvds.dtb DTB file for SPEAR-MX8 with LVDS display

Similar device trees starting with "imx8qp-" are also generated, for SOMs with the i.MX8QP variant of the SoC.


Build Results v3

Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx8qm-var-som-dp.dtb DTB file for VAR-SOM-MX8 with DP display
imx8qm-var-som-hdmi.dtb DTB file for VAR-SOM-MX8 with HDMI display
imx8qm-var-som-lvds.dtb DTB file for VAR-SOM-MX8 with LVDS display
imx8qm-var-spear-dp.dtb DTB file for SPEAR-MX8 with DP display
imx8qm-var-spear-hdmi.dtb DTB file for SPEAR-MX8 with HDMI display
imx8qm-var-spear-lvds.dtb DTB file for SPEAR-MX8 with LVDS display

Similar device trees starting with "imx8qp-" are also generated, for SOMs with the i.MX8QP variant of the SoC.


Build Results v4

Image Name
How to use
fsl-image-gui-.sdcard.gz This image is for SD card boot.
It can be flashed as-is on an SD card that can then be used to boot your system,
according to the relevant startup-guide of your product
(usually requires to press the boot select button, or toggle a DIP switch).
For detailed information refer to the Create a bootable SD card section below.
fsl-image-gui-.tar.gz Tarball with rootfs files.
Can be used to create an NFS root file system on the host.
See the Yocto Setup TFTP/NFS section for more info.
Also used to create our extended SD card.
See the Create a bootable SD card section below.
Linux kernel image, same binary for SD card and eMMC.
U-Boot built for SD card boot or eMMC boot.
File Name
Description
imx8qm-var-som-symphony-dp.dtb DTB file for VAR-SOM-MX8 with DP display on Symphony Board
imx8qm-var-som-symphony-hdmi.dtb DTB file for VAR-SOM-MX8 with HDMI display on Symphony Board
imx8qm-var-som-symphony-lvds.dtb DTB file for VAR-SOM-MX8 with LVDS display on Symphony Board
imx8qm-var-som-symphony-dp-m4.dtb DTB file for VAR-SOM-MX8 with DP display and Cortex-M4 on Symphony Board
imx8qm-var-som-symphony-hdmi-m4.dtb DTB file for VAR-SOM-MX8 with HDMI display and Cortex-M4 on Symphony Board
imx8qm-var-som-symphony-lvds-m4.dtb DTB file for VAR-SOM-MX8 with LVDS display and Cortex-M4 on Symphony Board
imx8qm-var-spear-sp8customboard-dp.dtb DTB file for SPEAR-MX8 with DP display on SP8CustomBoard
imx8qm-var-spear-sp8customboard-hdmi.dtb DTB file for SPEAR-MX8 with HDMI display on SP8CustomBoard
imx8qm-var-spear-sp8customboard-lvds.dtb DTB file for SPEAR-MX8 with LVDS display on SP8CustomBoard
imx8qm-var-spear-sp8customboard-dp-m4.dtb DTB file for SPEAR-MX8 with DP display and Cortex-M4 on SP8CustomBoard
imx8qm-var-spear-sp8customboard-hdmi-m4.dtb DTB file for SPEAR-MX8 with HDMI display and Cortex-M4 on SP8CustomBoard
imx8qm-var-spear-sp8customboard-lvds.m4.dtb DTB file for SPEAR-MX8 with LVDS display and Cortex-M4 on SP8CustomBoard

Similar device trees starting with "imx8qp-" are also generated, for SOMs with the i.MX8QP variant of the SoC.


Device tree

Build device tree for VAR-SOM-MX8 with DP display:
$ make -j4 freescale/fsl-imx8qm-var-som-db.dtb

Build device tree for VAR-SOM-MX8 with HDMI display:
$ make -j4 freescale/fsl-imx8qm-var-som-hdmi.dtb

Build device tree for VAR-SOM-MX8 with LVDS display:
$ make -j4 freescale/fsl-imx8qm-var-som-db.dtb

Build device tree for SPEAR-MX8 with DP display:
$ make -j4 freescale/fsl-imx8qm-var-spear-db.dtb

Build device tree for SPEAR-MX8 with HDMI display:
$ make -j4 freescale/fsl-imx8qm-var-spear-hdmi.dtb

Build device tree for SPEAR-MX8 with LVDS display:
$ make -j4 freescale/fsl-imx8qm-var-spear-lvds.dtb

Replace imx8qm with imx8qp to build the device trees for the i.MX8QP variant of the SoC.


Device tree v2

Build device tree for VAR-SOM-MX8 with DP display:
$ make -j4 freescale/imx8qm-var-som-db.dtb

Build device tree for VAR-SOM-MX8 with HDMI display:
$ make -j4 freescale/imx8qm-var-som-hdmi.dtb

Build device tree for VAR-SOM-MX8 with LVDS display:
$ make -j4 freescale/imx8qm-var-som-db.dtb

Build device tree for SPEAR-MX8 with DP display:
$ make -j4 freescale/imx8qm-var-spear-db.dtb

Build device tree for SPEAR-MX8 with HDMI display:
$ make -j4 freescale/imx8qm-var-spear-hdmi.dtb

Build device tree for SPEAR-MX8 with LVDS display:
$ make -j4 freescale/imx8qm-var-spear-lvds.dtb

Replace imx8qm with imx8qp to build the device trees for the i.MX8QP variant of the SoC.


Device tree v3

Build device tree for VAR-SOM-MX8 with DP display on Symphony Board:
$ make -j4 freescale/imx8qm-var-som-symphony-dp.dtb

Build device tree for VAR-SOM-MX8 with HDMI display on Symphony Board:
$ make -j4 freescale/imx8qm-var-som-symphony-hdmi.dtb

Build device tree for VAR-SOM-MX8 with LVDS display on Symphony Board:
$ make -j4 freescale/imx8qm-var-som-symphony-lvds.dtb

Build device tree for VAR-SOM-MX8 with DP display and Cortex-M4 on Symphony Board:
$ make -j4 freescale/imx8qm-var-som-symphony-dp-m4.dtb

Build device tree for VAR-SOM-MX8 with HDMI display and Cortex-M4 on Symphony Board:
$ make -j4 freescale/imx8qm-var-som-symphony-hdmi-m4.dtb

Build device tree for VAR-SOM-MX8 with LVDS display and Cortex-M4 on Symphony Board:
$ make -j4 freescale/imx8qm-var-som-symphony-lvds-m4.dtb

Build device tree for SPEAR-MX8 with DP display on SP8CustomBoard:
$ make -j4 freescale/imx8qm-var-spear-sp8customboard-dp.dtb

Build device tree for SPEAR-MX8 with HDMI display on SP8CustomBoard:
$ make -j4 freescale/imx8qm-var-spear-sp8customboard-hdmi.dtb

Build device tree for SPEAR-MX8 with LVDS display on SP8CustomBoard:
$ make -j4 freescale/imx8qm-var-spear-sp8customboard-lvds.dtb

Build device tree for SPEAR-MX8 with DP display and Cortex-M4 on SP8CustomBoard:
$ make -j4 freescale/imx8qm-var-spear-sp8customboard-dp-m4.dtb

Build device tree for SPEAR-MX8 with HDMI display and Cortex-M4 on SP8CustomBoard:
$ make -j4 freescale/imx8qm-var-spear-sp8customboard-hdmi-m4.dtb

Build device tree for SPEAR-MX8 with LVDS display and Cortex-M4on SP8CustomBoard:
$ make -j4 freescale/imx8qm-var-spear-sp8customboard-lvds-m4.dtb

Replace imx8qm with imx8qp to build the device trees for the i.MX8QP variant of the SoC.


SD card image file tree

/opt/images/
└── Yocto
    ├── imx-boot-sd.bin
    └── rootfs.tar.gz


DTB files table

DTB File Name
Description
fsl-imx8qm-var-som-dp.dtb Device tree blob for VAR-SOM-MX8 with DP display
fsl-imx8qm-var-som-hdmi.dtb Device tree blob for VAR-SOM-MX8 with HDMI display
fsl-imx8qm-var-som-lvds.dtb Device tree blob for VAR-SOM-MX8 with LVDS display
fsl-imx8qm-var-spear-dp.dtb Device tree blob for SPEAR-MX8 with DP display
fsl-imx8qm-var-spear-hdmi.dtb Device tree blob for SPEAR-MX8 with HDMI display
fsl-imx8qm-var-spear-lvds.dtb Device tree blob for SPEAR-MX8 with LVDS display


DTB files table v2

DTB File Name
Description
imx8qm-var-som-dp.dtb Device tree blob for VAR-SOM-MX8 with DP display
imx8qm-var-som-hdmi.dtb Device tree blob for VAR-SOM-MX8 with HDMI display
imx8qm-var-som-lvds.dtb Device tree blob for VAR-SOM-MX8 with LVDS display
imx8qm-var-spear-dp.dtb Device tree blob for SPEAR-MX8 with DP display
imx8qm-var-spear-hdmi.dtb Device tree blob for SPEAR-MX8 with HDMI display
imx8qm-var-spear-lvds.dtb Device tree blob for SPEAR-MX8 with LVDS display


Setting the Boot Mode

Make sure the BOOT SELECT DIP switch on the carrier board is set correctly before you power on the board.

SW3 on VAR-SOM-MX8, SW6 on SPEAR-MX8
 0 : Boot from SD card
 1 : Boot from eMMC (Internal)


Release Notes

Based on release Yocto: Poky , BSP: NXP, Linux: [ ]
Release tag [/tree/ ]
Release manifest [/blob// ]
Date
Supported platforms
SOM revision
File System build system Yocto
Recovery SD card link [/ ]

Relevant git Repositories

Source Repository Branch Commit ID






Configuring RS485 Half-Duplex

Each UART can be configured for RS485 Half-Duplex mode by using a GPIO pin to drive the receive and transmit enable inputs. This can be configured in the device tree by making the following changes to the uart node and replacing X, Y & Z with the proper values:

&uartX {                                                          /* Add RS485 properties to uartX */
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_uartX>, <&pinctrl_uartX_rs485>;     /* Add RS485 GPIO pinctrl */
	rts-gpios = <&gpioY Z GPIO_ACTIVE_LOW>;                   /* Add rts-gpios property */
	linux,rs485-enabled-at-boot-time;                         /* Enable RS485 at boot time to skip using TIOCSRS485 ioctl */
	status = "okay";
};

Next, configure the RS485 GPIO pin by adding pinctrl_uartX_rs485 to iomuxc. Replace X, GPIO_PIN_FUNCTION, and GPIO_PIN_SETTINGS with the proper values:

&iomuxc {
	pinctrl_uartX_rs485: uartXrs485 {
		fsl,pins = <
			GPIO_PIN_FUNCTION  GPIO_PIN_SETTINGS
		>;
	};
};

Note: For more information about configuring pins, please see i.MX Device Tree Pinmux Settings Guide


After making these changes, RS485 mode will be enabled by default and can be verified from the console by running the commands below. Replace N with the proper value, which is typically X-1 relative to the device tree node uartX:

# stty -F /dev/ttymxcN -echo -onlcr 115200
# echo hello > /dev/ttymxcN

The below logic analyzer capture shows the RS485 RX/TX enable line toggling when writing to the UART:

Rs485.png


Please refer to the Linux device tree bindings for more RS485 configuration options.


 Expression error: Unexpected > operator. Expression error: Unexpected >= operator. Expression error: Unexpected >= operator.  
$ cd 
$ MACHINE= DISTRO=


The above command is only mandatory 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 
$ source setup-environment


Platform Customizations

VAR-SOM-MX6

DART-6UL

VAR-SOM-MX7

DART-MX8M

DART-MX8M-MINI

VAR-SOM-MX8M-NANO

DART-MX8M-PLUS

VAR-SOM-MX8X

VAR-SOM-MX8

VAR-SOM-MX93

-->


-->


-->




VAR-SOM-AM62

VAR-SOM-AM33

DART-MX95

-->


Create a bootable SD card

SD card structure

This is the structure of our Recovery/Extended SD card:
SD card part mx8m.png


The SD card is divided into 2 sections as shown in the picture above:

  • The first unallocated 8MiB section reserved for U-Boot. It can be replaced using the dd command as described in the Yocto Build U-Boot section.
  • The first partition is an ext4 partition that contains the complete root filesystem (including kernel image and device tree files under /boot).

Note:
The last unallocated area is not used. It is there so that the rootfs will fit on any 4GB SD card, as not all 4GB SD cards are really the same size. If you want, you can use a program such as GParted to resize the roofs partition and make it end at the end of your specific SD card (of course, you can also use SD cards with much bigger capacity than 4GB, and then it makes more sense to resize the partition).
Also, if you create the extended SD card yourself by following the Create an extended SD card section below, and you use the '-a' option, the rootfs partition will end at the end of your specific SD card automatically.

Yocto pre-built bootable SD card

The Yocto build products contains many files as explained in the Build Results section. For example, fsl-image-gui-imx95-var-dart.rootfs.wic.zst, depending on your build. This is a complete image to be flashed directly to an SD card.

Example usage:

$ sudo umount /dev/sdX*
# For GUI-XWAYLAND & Qt6-XWAYLAND
$ cd ~/var-fsl-yocto/build_xwayland
Or
# For GUI-WAYLAND & Qt6-WAYLAND
$ cd ~/var-fsl-yocto/build_wayland

# For fsl-image-gui image (GUI-XWAYLAND & GUI-WAYLAND)
$ zcat tmp/deploy/images/imx95-var-dart/fsl-image-gui-imx95-var-dart.rootfs.wic.zst | sudo dd of=/dev/sdX bs=1M conv=fsync
Or
# For fsl-image-qt6 image (Qt6-XWAYLAND & Qt6-WAYLAND)
$ zcat tmp/deploy/images/imx95-var-dart/fsl-image-qt6-imx95-var-dart.rootfs.wic.zst | sudo dd of=/dev/sdX bs=1M conv=fsync
Replace sdX with the right device name. This can be obtained by "dmesg" command on your host Linux PC, after the SD card reader is inserted.
  • Note: Booting your system from an SD card requires pressing the boot-select button, or switching the relevant DIP switch to "Boot from SD card", according to the relevant start-up guide of your system


Drawbacks of the native .rootfs.wic.zst yocto-built image, (relative to the Recovery/Extended SD card):

  • The rootfs partition doesn't use the entire SD card.
  • The rootfs partition is not labeled as rootfs.
  • The NAND flash and eMMC installation scripts and images are not included.

Create an extended SD card

Variscite provides the var-create-yocto-sdcard.sh script which creates our recovery SD card - an SD card based on the fsl-image-gui filesystem, which also contain the scripts and relevant binaries for installation to the internal storage of the SOM.
Later, you will be able to follow either the more automatic Yocto Recovery SD card guide or the more manual Installing Yocto to the SOM's internal storage guide.

Note:
This is essentially the same as our pre-built Recovery SD image, with the following main differences:

  • The pre-built image's rootfs partition size is 3700MiB, which is also the default size when using the script, but the script also has an option to set the rootfs partition size to fill the whole free space of the used SD card. Anyway, you can always resize the partition later with an external tool such as gparted.

Naturally, the pre-built image is more straight forward and easier to use, while the script method is easier to customize.

Usage:

  • Follow the Setup and build Yocto guide, and bitbake fsl-image-gui.
  • Plug-in the SD card to your Linux Host PC, run dmesg and see which device is added (i.e. /dev/sdX or /dev/mmcblkX)
$ cd ~/var-fsl-yocto
$ sudo MACHINE=imx95-var-dart sources/meta-variscite-sdk-imx/scripts/var_mk_yocto_sdcard/var-create-yocto-sdcard.sh <options> /dev/sdX
(Replace /dev/sdX with your actual device)
options:
 -h            Display help message
 -s            Only show partition sizes to be written, without actually write them
 -a            Automatically set the rootfs partition size to fill the SD card
 -r            Select alternative rootfs for recovery images (default: build_x11/tmp/deploy/images/imx95-var-dart/fsl-image-gui-imx95-var-dart.*)
If you don't use the '-a' option, a default rootfs size of 3700MiB will be used
The '-r' option allows you to create a bootable SD card with an alternative image for the installation to NAND flash or eMMC.
Example: "-r tmp/deploy/images/imx95-var-dart/fsl-image-qt6-imx95-var-dart" -- selected the "Qt6 image with X11" recovery image

Create an extended SD card image using a loop device

It is also possible to use the var-create-yocto-sdcard.sh script to create an extended SD card image, while using a loop device instead of attaching a real SD card.

Create an empty file using the following command:

$ dd if=/dev/zero of=imx95-var-dart-extended-sd.img bs=1M count=7420

The above command creates a 7420MiB file representing the SD card.

Attach the first available loop device to this file:

$ sudo losetup -Pf imx95-var-dart-extended-sd.img

To find the actual loop device being used, run:

$ losetup -a | grep imx95-var-dart-extended-sd.img

Write the content to the loop device to generate the SD card image:

$ sudo MACHINE=imx95-var-dart sources/meta-variscite-sdk-imx/scripts/var_mk_yocto_sdcard/var-create-yocto-sdcard.sh <options> /dev/loopX

(Replace /dev/loopX with your actual loop device, e.g. /dev/loop0)

Detach the loop device from the file:

$ sudo losetup -d /dev/loopX

To compress the SD card image file use the following command:

$ gzip -9 imx95-var-dart-extended-sd.img

To write the SD card image to a real SD card device use the following command:

$ zcat imx95-var-dart-extended-sd.img.gz | sudo dd of=/dev/sdX bs=1M && sync

(Replace /dev/sdX with your actual SD device, e.g. /dev/sdb)

Boot the board with a bootable SD card

Setting the Boot Mode

Make sure the BOOT SELECT DIP switch on the carrier board is set correctly before you power on the board.

SW7
 0 : Boot from SD card
 1 : Boot from eMMC


Automatic device tree selection in U-Boot

As shown in the Build Results table above, we have different kernel device trees, corresponding to our different H/W configurations.
We implemented a script in U-Boot's environment, which sets the fdt_file environment variable based on the detected hardware.

Enable/Disable automatic device tree selection

To enable the automatic device tree selection in U-Boot (already enabled by default):

$ setenv fdt_file undefined
$ saveenv

To disable the automatic device tree selection in U-Boot, set the device tree file manually:

$ setenv fdt_file YOUR_DTB_FILE
$ saveenv

Useful example: To list all files in the /boot directory (where the dtb files are by default) of an SD card:

$ ls mmc 1:1 /boot

Flash images to NAND/eMMC

Please refer to Yocto NAND Flash Burning guide.

Yocto Image Customization

Update Yocto Scarthgap to latest revision

From time to time we update the Yocto sources (especially meta-variscite) with new features and bug fixes.
Follow the Download the latest revision (recommended) bullet section of the Download Yocto Scarthgap based on Freescale Community BSP step again to update your tree to the latest revision, and rebuild your image.

Update Yocto Scarthgap to a release tag

Follow the Download a release tag bullet section of the Download Yocto Scarthgap based on Freescale Community BSP step to update your tree to a release tag, and rebuild your image.

Forcing Clean Build

In order to update the kernel, U-Boot and rootfs:
$ bitbake -c cleanall u-boot-variscite linux-variscite kernel-module-imx-gpu-viv ti-compat-wireless-wl18xx wl18xx-firmware cryptodev-module

for GUI image
$ bitbake -c clean fsl-image-gui
for Qt6 image
$ bitbake -c clean fsl-image-qt6


DDR size and Contiguous Memory Allocator

By default Freescale allocates 256MB of RAM to the Contiguous Memory allocator. This is for proper operation of the IPU VPU, X11 etc. On VAR-SOM-SOLO with 256MB DDR RAM size, it will cause a kernel freeze during boot. Adding cma=32MB to the bootargs parameters is required to fix.

Make changes to the rootfs

The following is usually not the recommended way to work with Yocto.
You should usually create new specific recipes (.bb files) and/or append to specific present recipes by using .bbappend files.
However, if you are not yet experienced enough with Yocto, and you just want to quickly add your files to the resultant file system (or make any other change to it), you can do it in a general way, by using the following variable:

ROOTFS_POSTPROCESS_COMMAND

    Specifies a list of functions to call once the OpenEmbedded build system has created the root filesystem.
    You can specify functions separated by semicolons:

         ROOTFS_POSTPROCESS_COMMAND += "function; ... "                  

    If you need to pass the root filesystem path to a command within a function, you can use ${IMAGE_ROOTFS},
    which points to the directory that becomes the root filesystem image. See the IMAGE_ROOTFS variable for more information. 

The functions will be called right after the root filesystem is created and right before it is packed to images (.rootfs.wic.zst, .ubi, .tar.gz, etc.).

Example

Let's say you have your files that you want to put in the filesystem arranged on your host under a directory called /my_rootfs_additions, like the following:

my_rootfs_additions/
├── data
│   ├── example.m4v
│   └── example.bin
├── etc
│   └── example.conf
└── home
    └── root
        └── .example

And let's say you want to build the fsl-image-gui image.

Create a file called ~/var-fsl-yocto/sources/meta-variscite-bsp-imx/recipes-images/images/fsl-image-gui.bbappend
with the following content:

add_my_files() {
    cp -r /my_rootfs_additions/*  ${IMAGE_ROOTFS}/
}

ROOTFS_POSTPROCESS_COMMAND += "add_my_files;"

Now, when you bitbake fsl-image-gui, the files in /my_rootfs_additions will be added to the rootfs (be careful when overwriting files).

Useful Bitbake commands

Bitbake Cheat Sheet

Useful bitbake commands

i.MX Yocto Project: ltib versus bitbake