The linux partition contains the following elements:

  • The kernel binary.

  • Several device tree blobs for each SOM and carrier board variant.

  • A U-Boot bootscript to boot the system.

    The main purpose of the bootscript is to select the appropriate device tree blob and overlays depending on the detected SOM variant and carrier board. This element is provided by the bootloader Digi Embedded Yocto recipe, not the kernel.

The linux partition is formatted in UBIFS file system.

Update files from Linux

The linux partition is automatically mounted to /mnt/linux, but as a read-only filesystem.

To list the contents of the linux partition:

~# ls /mnt/linux/ -l
-rw-r--r--    1 1000     1000          1177 Jan 13 06:20 boot.scr
-rw-r--r--    1 1000     1000         54919 Jan 13 06:16 imx6ul-ccimx6ulsbc-id135.dtb
-rw-r--r--    1 1000     1000         54919 Jan 13 06:16 imx6ul-ccimx6ulsbc-id136.dtb
-rw-r--r--    1 1000     1000         54919 Jan 13 06:16 imx6ul-ccimx6ulsbc-wb.dtb
-rw-r--r--    1 1000     1000         52555 Jan 13 06:16 imx6ul-ccimx6ulsbc.dtb
-rw-r--r--    1 1000     1000       6923328 Jan 13 06:16 zImage-ccimx6ulsbc.bin

To update the files from user space, remount the linux partition with read/write permissions:

~$ mount -o remount,rw /dev/ubi0_0 /mnt/linux

From your development machine, you can now copy the files to the target via ssh. For example:

~$ scp zImage root@<cc6ul-ip>:/mnt/linux/zImage-ccimx6ulsbc.bin

When building from Digi Embedded Yocto, all the elements are packaged together in a single file:

  • core-image-base-ccimx6ulstarter.boot.ubifs or similar on the ConnectCore 6UL SBC Express.

  • dey-image-qt-x11-ccimx6ulsbc.boot.ubifs or similar on the ConnectCore 6UL SBC Pro.

To update the entire linux partition from U-Boot console, save the image file to your TFTP server and use the update command in U-Boot:

=> update linux tftp <filename>