Need help? Write to us contact@example.com

Please, enable Compare.

Building Yocto Mickledore BSP Distribution


https://github.com/nxp-imx/meta-imx/meta-bsp
https://github.com/Freescale/meta-freescale-distro

Overview of the meta-embedian Yocto Layer


Notes on meta-embedian layer content

This folder contains the machine definitions for all Embedian’s platform and backup repository in Embedian. These select the associated kernel, kernel config, u-boot, u-boot config, and tar.bz2 image settings.

This folder contains recipes used to build DAS U-boot for all Embedian’s platform.

This folder contains recipes used to enable console port for Embedian’s i.MX8MM and pITX-MX8M-Plus platform.

This folder contains system control firmware binary for Embedian’s i.MX8QM platform.

This folder contains sgtl5000 sound chip default state for all Embedian’s platform.

This folder contains imx-mkimage tool for Embedian’s i.MX93, i.MX8MQ, i.MX8MM, i.MX8QM, i.MX8MP platform.

This folder remove telnetd from bysybox for all Embedian’s platform.  

This folder customized Yocto boot psplash for all Embedian’s platform.

Contains the recipes needed to build for all Embedian’s platform Linux kernels.

Setting Up the Tools and Build Environment











Notes

Building the Target Platforms



or


Notes



This folder contains the binary images for the root file system and the Embedian SMARC-FiMX6 specific version of the boot file, Image and device tree file. Specifically the images are:

This is u-boot binary file for SMARC-FiMX6.

The kernel Image for SMARC-FiMX6.  

Selecting display configuration is a matter of selecting an appropriate DTB file under deploy/images/<machine name>/<device tee file>

DTB FILENAME

DESCRIPTION

imx6dl-smarc.dtb

Device tree blob i.mx6 solo and dual lite core with HDMI or parallel RGB display configuration.

imx6dl-smarc-wvga.dtb

Device tree blob i.mx6 solo and dual lite core with wvga resolutions LVDS display configuration.

imx6dl-smarc-wxga.dtb

Device tree blob i.mx6 solo and dual lite core with wxga resolutions LVDS display configuration.

imx6dl-smarc-xga.dtb

Device tree blob i.mx6 solo and dual lite core with xga resolutions LVDS display configuration.

imx6dl-smarc-1080p.dtb

Device tree blob i.mx6 solo and dual lite core with 1080p resolutions LVDS display configuration.

imx6q-smarc.dtb

Device tree blob i.mx6 dual and quad core with HDMI or parallel RGB display configuration.

imx6q-smac-wvga.dtb

Device tree blob i.mx6 dual and quad core with wvga resolutions LVDS display configuration.

imx6q-smac-wxga.dtb

Device tree blob i.mx6 dual and quad core with wxga resolutions LVDS display configuration.

imx6q-smac-xga.dtb

Device tree blob i.mx6 dual and quad core with xga resolutions LVDS display configuration.

imx6q-smac-1080p.dtb

Device tree blob i.mx6 dual and quad core with 1080p resolutions LVDS display configuration.

imx6qp-smarc.dtb

Device tree blob i.mx6 quadplus core with HDMI or parallel RGB display configuration.

imx6qp-smarc-wvga.dtb

Device tree blob i.mx6 quadplus core with wvga resolutions LVDS display configuration.

imx6qp-smarc-wxga.dtb

Device tree blob i.mx6 quadplus core with wxga resolutions LVDS display configuration.

imx6qp-smarc-xga.dtb

Device tree blob i.mx6 quadplus core with xga resolutions LVDS display configuration.

imx6qp-smarc-1080p.dtb

Device tree blob i.mx6 quadplus core with 1080p resolutions LVDS display configuration.

Embedian root file system images for software development on Embedian’s SMARC-FiMX6 platforms without QT6.

Embedian root file system images for software development on Embedian’s SMARC-FiMX6  with QT6.

This folder contains all the packages used to construct the root file system images. They are in deb format (similar format to Debian packages) and can be dynamically installed on the target platform via a properly  constructed feed file. Here is an example of the feed file (named base- feeds.conf) that is used internally at Embedian to install upgrades onto a SMARC-FiMX6 platform without reflashing the file system:


src/gz cortexa9t2hf-neon-mx6qdl http://<ip addresss>/cortexa9t2hf-neon-mx6qdl


A database of all licenses used in all packages built for the system.

Setup SD Card Manually















If on-module SPI NOR Flash is not empty

The u-boot.imx is pre-installed in SPI NOR flash at factory default. SMARC-FiMX6 is designed to always boot up from SPI NOR flash and to load zImage, device tree blob and root file systems based on the setting of BOOT_SEL. If users need to write their own u-boot or perform u-boot upgrade. This section will instruct you how to do that.

~/mickledore-release/<build dir>/tmp/deploy/images/<machine name>/


Write u-boot.imx to the SPI NOR flash.

Stop at U-Boot command prompt (Press any key when booting up). Copy and Paste the following script under u-boot command prompt. 

U-Boot Command Prompt


If on-module SPI NOR Flash is empty

~/mickledore-release/<build dir>/tmp/deploy/images/<machine name>/

Notes


~/uEnv.txt

~/


~/mickledore-release/<build dir>/tmp/deploy/images/<machine name>/


~/mickledore-release/<build dir>/tmp/deploy/images/<machine name>/

$ sudo cp -v imx6dl-smarc.dtb /media/boot/dtbs/imx6dl-smarc.dtb

DTB FILENAME

DESCRIPTION

imx6dl-smarc.dtb

Device tree blob i.mx6 solo and dual lite core with HDMI or parallel RGB display configuration.

imx6dl-smarc-wvga.dtb

Device tree blob i.mx6 solo and dual lite core with wvga resolutions LVDS display configuration.

imx6dl-smarc-wxga.dtb

Device tree blob i.mx6 solo and dual lite core with wxga resolutions LVDS display configuration.

imx6dl-smarc-xga.dtb

Device tree blob i.mx6 solo and dual lite core with xga resolutions LVDS display configuration.

imx6dl-smarc-1080p.dtb

Device tree blob i.mx6 solo and dual lite core with 1080p resolutions LVDS display configuration.

imx6q-smarc.dtb

Device tree blob i.mx6 dual and quad core with HDMI or parallel RGB display configuration.

imx6q-smac-wvga.dtb

Device tree blob i.mx6 dual and quad core with wvga resolutions LVDS display configuration.

imx6q-smac-wxga.dtb

Device tree blob i.mx6 dual and quad core with wxga resolutions LVDS display configuration.

imx6q-smac-xga.dtb

Device tree blob i.mx6 dual and quad core with xga resolutions LVDS display configuration.

imx6q-smac-1080p.dtb

Device tree blob i.mx6 dual and quad core with 1080p resolutions LVDS display configuration.

imx6qp-smarc.dtb

Device tree blob i.mx6 quadplus core with HDMI or parallel RGB display configuration.

imx6qp-smarc-wvga.dtb

Device tree blob i.mx6 quadplus core with wvga resolutions LVDS display configuration.

imx6qp-smarc-wxga.dtb

Device tree blob i.mx6 quadplus core with wxga resolutions LVDS display configuration.

imx6qp-smarc-xga.dtb

Device tree blob i.mx6 quadplus core with xga resolutions LVDS display configuration.

imx6qp-smarc-1080p.dtb

Device tree blob i.mx6 quadplus core with 1080p resolutions LVDS display configuration.


~/mickledore-release/<build dir>/tmp/deploy/images/<machine name>

For WVGA (800×480) LVDS display:
sudo cp -v imx6q-smarc-wvga.dtb /media/boot/dtbs/imx6q-smarc.dtb
$ sudo cp -v imx6dl-smarc-wvga.dtb /media/boot/dtbs/imx6dl-smarc.dtb
$ sudo cp -v imx6qp-smarc-wvga.dtb /media/boot/dtbs/imx6qp-smarc.dtb

For XGA (1024×768) LVDS display:
sudo cp -v imx6q-smarc-xga.dtb /media/boot/dtbs/imx6q-smarc.dtb
$ sudo cp -v imx6dl-smarc-xga.dtb /media/boot/dtbs/imx6dl-smarc.dtb
$ sudo cp -v imx6qp-smarc-xga.dtb /media/boot/dtbs/imx6qp-smarc.dtb

For WXGA (1366×768) LVDS display:
sudo cp -v imx6q-smarc-wxga.dtb /media/boot/dtbs/imx6q-smarc.dtb
$ sudo cp -v imx6dl-smarc-wxga.dtb /media/boot/dtbs/imx6dl-smarc.dtb
$ sudo cp -v imx6qp-smarc-wxga.dtb /media/boot/dtbs/imx6qp-smarc.dtb

For 1080p (1920×1080) LVDS display:
sudo cp -v imx6q-smarc-1080p.dtb /media/boot/dtbs/imx6q-smarc.dtb
$ sudo cp -v imx6dl-smarc-1080p.dtb /media/boot/dtbs/imx6dl-smarc.dtb
$ sudo cp -v imx6qp-smarc-1080p.dtb /media/boot/dtbs/imx6qp-smarc.dtb


~/mickledore-release/<build dir>/tmp/deploy/images/<machine name>/


Notes


Setup SD Card Automatically



Feed Packages









Writing Bitbake Recipes







WORKDIR is located at ${OETREE}/<build directory>/tmp/work/cortexa9hf-neon-poky-linux-gnueabi/<package name and version> for most packages. If the package is machine-specific (rather than generic for the armv8a architecture), it may be located in the cortexa9hf-neon-poky-linux-gnueabi subdirectory depending on your hardware (this applies to kernel packages, images, etc).







~/mickledore-release/<build dir>/tmp/deploy/images/<machine name>/


~/uEnv.txt


~/mickledore-release/<build dir>/tmp/deploy/images/<machine name>/

$ sudo cp -v imx6dl-smarc.dtb /media/rootfs/home/root/imx6dl-smarc.dtb

$ sudo cp -v imx6qp-smarc.dtb /media/rootfs/home/root/imx6qp-smarc.dtb



~/mickledore-release/<build dir>/tmp/deploy/images/<machine name>/

























Was this article helpful?