Sumo
http://gitlab.keith-koep.com/imx/imx-manifest
http://gitlab.keith-koep.com/imx/meta-fsl-bsp-release
Yocto Images
Date | Description | Download |
---|---|---|
26.05.2021 | Yocto Sumo with 4.14.98 kernel and chromium browser | |
26.05.2021 | Yocto Sumo with 4.14.98 kernel and chromium browser Update 12.8 Bootloader Devtree | |
26.05.2021 | Yocto Sumo with 4.14.98 kernel and chromium browser Update 12.8 Bootloader Devtree | |
12.08.2019 | Yocto Sumo with 4.14.98 kernel | |
08.05.2019 | Yocto Sumo with 4.14.78 kernel |
Yocto Project Setup
This is only a quick-reference on how to setup and build a Yocto image.
For details please view the Linux and NXP i.MX8M documentation. Especially the „i.MX_Yocto_Project_User's_Guide“.
Branch | Manifest-File | Remarks |
---|---|---|
imx-linux-sumo | imx-4.14.78-1.0.0_ga.xml | NXP Release |
kuk_imx-linux-sumo | kuk_imx-4.14.98-2.0.0_ga.xml | Old 4.14.98 Branch of U-Boot/Kernel etc. |
kuk_imx-linux-sumo | kuk_imx-4.14.98-2.0.0_ga_20190902.xml | Status 02.09.2019 (verified) |
kuk_imx-linux-sumo | kuk_imx-p9.0.0_2.3.4.xml | Current branch for 4.14.98 Kernel |
$ mkdir <project-dir>
$ cd <project-dir>
$ repo init -u http://gitlab.keith-koep.com/imx/imx-manifest.git -b <Branch> -m <Manifest-File>
$ repo sync
Example
$ mkdir imx-yocto-bsp
$ cd imx-yocto-bsp
$ repo init -u http://gitlab.keith-koep.com/imx/imx-manifest.git -b kuk_imx-linux-sumo -m kuk_imx-p9.0.0_2.3.4.xml
$ repo sync
When this process is completed, the source code is checked out into the directory imx-yocto-bsp/sources.
You can perform repo synchronization, with the command repo sync, periodically to update to the latest code.
Distribution | Remarks |
---|---|
fsl-imx-x11 | X11 graphics are not supported on i.MX 8 |
fsl-imx-wayland | Wayland weston graphics |
fsl-imx-xwayland | Wayland graphics and X11. X11 applications using EGL are not supported |
fsl-imx-fb | Frame Buffer graphics - no X11 or Wayland. Frame Buffer is not supported on i.MX 8 |
Machine | Remarks |
---|---|
imx8mq_trizeps8 | Trizeps VIII |
imx8mm_trizeps8mini | Trizeps VIII Mini |
imx8mm_myon2 | Myon II |
imx8mm_kuk | Myon II and Trizeps VIII Mini |
$ DISTRO=<Distribution> MACHINE=<Machine> source fsl-setup-release.sh -b <build-dir>
Example
Image Build
After the setup of the build-environment, you can start to run bitbake to build the image.
Project-Image | Target | Provided by layer |
---|---|---|
core-image-minimal | A small image that only allows a device to boot. | Poky |
core-image-base | A console-only image that fully supports the target device hardware | Poky |
core-image-sato | An image with Sato, a mobile environment and visual style for mobile devices. | Poky |
fsl-image-machine-test | An FSL Community i.MX core image with console environment - no GUI interface | meta-freescale-distro |
fsl-image-validation-imx | Builds an i.MX Image with a GUI without any Qt content. | meta-fsl-bsp-release/imx/meta-sdk |
fsl-image-qt5-validation-imx | Builds an opensource Qt 5 image. | meta-fsl-bsp-release/imx/meta-sdk |
After reboot or opening a new terminal window, you can restart the build environment with:
Example
After a build is complete, the image can be found at <build-dir>/tmp/deploy/images.
The image_name will be <Project-Image>-<Machine>.sdcard.bz2; i.e. fsl-image-qt5-validation-imx-imx8mm_trizeps8mini.sdcard.bz2.
The bootloader will be imx-boot-<Machine>-sd.bin-flash_<Module>; i.e. imx-boot-imx8mm_trizeps8mini-sd.bin-flash_trizeps8mini.
Deploy Image
How to deploy the image depends on wether you have a module with eMMC oder uSD-card-slot.
For a module with eMMC you will use the NXP Universal Update Utility (UUU) to update the files while the module is in USB Serial Download Mode.
For a module with uSD-Slot you can either use NXP Universal Update Utility (UUU) or deploy the image directly to the uSD-card using an uSD-card-reader with your PC.
Flash Image to SD card
Identify the uSD-card plugged to your PC; i.e. by using „lsblk | grep disk“
Flash Image to eMMC
Put the module into USB Serial Download Mode and run:
Select Device-Tree
After flashing the image you will need to select the correct device-tree for your device.
This can be done in two ways:
Through the bootloader-console (115k2, 8N1):
You can get a list of installed *.dtb files by calling „fatls mmc 0“.
Rename the wished device-tree file (.dtb) to the default fdt_file setting:
Module | Default fdt_file setting |
---|---|
Trizeps VIII | kuk-trizeps8.dtb |
Trizeps VIII Mini | kuk-trizeps8mini.dtb |
Myon II | kuk-trizeps8mini.dtb |
(Myon II and Trizeps VIII Mini use the same bootloader )
Using a Deployment-Package
Yocto-Images uploaded to the wiki can be supplied in different formats.
The current format is a zip-file which contains the images and scripts.
You may use
This will use the uuu.auto script-file to deploy the image through USB.
You may also unzip the file and run the deploy script-file.
It will show usage information if run without parameters and can either flash the image through USB or uSD-card.
Previous deployment-packages typical included:
readme.txt | Explains how to install the package. |
uuu | |
package.zip | |
boot | Folder containing extra files; i.e. DeviceTree or updated kernel. |
root | Folder containing extra files to patch to the root-file-system. |
View readme.txt. It should instruct to do something like:
Connect Serial Port 1 (115k2, 8N1) and USB-OTG with PC and enter Serial-Download-Mode
Run
Use 'ctrl-c' to enter bootloader-console and run
Copy contents of '.\boot' to Boot-FAT-partition of module; i.e.:
Copy contents of '.\root' to Ext4-partition of module; i.e.:
Unmount store and use 'ctrl-c' to re-enter bootloader-console.
Select device-tree to use; i.e.:
Restart system.
Notes on Build
Yocto | Configuration | Space needed after 'repo sync' | Space needed after 'bitbake' | Build-Time |
---|---|---|---|---|
imx-4.14.98-2.0.0_ga | fsl-image-qt5-validation-imx | 462 MByte | 136 GByte | 2h20min (30 cores i9 in VM) |