This topic shows how to deploy a customized kernel and/or device tree to your target device.
After customizing the kernel source code, you may either have built a full Digi Embedded Yocto image recipe or just the kernel recipe.
Program image files (full partition update)
If you built a full image recipe (dey-image-qt, for example), Digi Embedded Yocto generates an image file for the linux partition, such as:
-
dey-image-qt-xwayland-ccimx6qpsbc.boot.vfat
or similar on the ConnectCore 6 Plus SBC.
The most straightforward way to program image files is from U-Boot console, using the update
command.
For example, to program via Ethernet:
-
Save the image file to your TFTP exposed folder.
-
Boot the target and press any key to stop the automatic U-Boot boot process.
-
Run the
update
command to update the entire linux partition:=> update linux tftp <image-filename>
See Program images from U-Boot for additional information on updating from U-Boot.
Program single files
If you built only the kernel recipe, you can find the kernel binary and device tree blobs in the tmp/deploy/images/
folder of your project.
You can deploy these single files to your linux partition, which is formatted in FAT file system.
Update files from U-Boot
-
Power on your target and press any key to stop automatic U-Boot boot process.
-
List the contents of the linux partition:
=> ls mmc 0:1 5727600 zimage-ccimx6qpsbc.bin 54314 zimage-imx6qp-ccimx6qpsbc.dtb 54425 zimage-imx6qp-ccimx6qpsbc-id160.dtb 54425 zimage-imx6qp-ccimx6qpsbc-wb.dtb 1045 boot.scr
-
Run the
updatefile
command to update a file from the U-Boot console, for example via TFTP:=> updatefile linux tftp <filename>
See Update files within partition, for additional information.
Update files from Linux
The linux partition is automatically mounted to /mnt/linux
, but as a read-only file system.
-
Remount the linux partition with read/write permissions:
$ mount -o remount,rw /dev/mmcblk0p1 /mnt/linux
-
List the contents of the linux partition:
# ls -l /mnt/linux/ -rwxr-xr-x 1 root root 1516 Nov 2 22:07 boot.scr -rwxr-xr-x 1 root root 73474 Nov 2 22:07 imx6qp-ccimx6qpsbc-id160.dtb -rwxr-xr-x 1 root root 73474 Nov 2 22:07 imx6qp-ccimx6qpsbc-wb.dtb -rwxr-xr-x 1 root root 73313 Nov 2 22:07 imx6qp-ccimx6qpsbc.dtb -rwxr-xr-x 1 root root 6896168 Nov 2 22:07 zImage-ccimx6qpsbc.bin
-
Copy the file you want to the target, for example via SSH:
$ scp zImage root@<cc6plus-ip>:/mnt/linux/zImage-ccimx6qpsbc.bin