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-ccimx8mn-dvk.boot.vfat
or similar on the ConnectCore 8M Nano Development Kit.
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 9901321 Image.gz-ccimx8mn-dvk.bin 66645 ccimx8mn-dvk.dtb 602 _ov_board_gpio-watchdog_ccimx8m-dvk.dtbo 858 _ov_board_lvds_ccimx8m-dvk.dtbo 731 _ov_board_user-leds_ccimx8m-dvk.dtbo 1783 _ov_board_v1-v2_ccimx8mn-dvk.dtbo 710 _ov_som_bt_ccimx8m.dtbo 656 _ov_som_mca-keypad_ccimx8m.dtbo 2146 _ov_som_v1_ccimx8mn.dtbo 605 _ov_som_wifi_ccimx8m.dtbo 2112 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 9901321 Feb 28 20:25 Image.gz-ccimx8mn-dvk.bin -rwxr-xr-x 1 root root 602 Feb 28 20:25 _ov_board_gpio-watchdog_ccimx8m-dvk.dtbo -rwxr-xr-x 1 root root 858 Feb 28 20:25 _ov_board_lvds_ccimx8m-dvk.dtbo -rwxr-xr-x 1 root root 731 Feb 28 20:25 _ov_board_user-leds_ccimx8m-dvk.dtbo -rwxr-xr-x 1 root root 1783 Feb 28 20:25 _ov_board_v1-v2_ccimx8mn-dvk.dtbo -rwxr-xr-x 1 root root 710 Feb 28 20:25 _ov_som_bt_ccimx8m.dtbo -rwxr-xr-x 1 root root 1513 Feb 28 20:25 _ov_som_cm7_ccimx8mn.dtbo -rwxr-xr-x 1 root root 656 Feb 28 20:25 _ov_som_mca-keypad_ccimx8m.dtbo -rwxr-xr-x 1 root root 2146 Feb 28 20:25 _ov_som_v1_ccimx8mn.dtbo -rwxr-xr-x 1 root root 605 Feb 28 20:25 _ov_som_wifi_ccimx8m.dtbo -rwxr-xr-x 1 root root 2112 Feb 28 20:25 boot.scr -rwxr-xr-x 1 root root 66645 Feb 28 20:25 ccimx8mn-dvk.dtb
-
Copy the file you want to the target, for example via SSH:
$ scp Image.gz root@<cc8mnano-ip>:/mnt/linux/Image.gz-ccimx8mn-dvk.bin