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-webkit, for example), Digi Embedded Yocto generates an image file for the linux partition, such as:

  • dey-image-webkit-wayland-ccmp15-dvk.boot.ubifs or similar on the ConnectCore MP15 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:

  1. Save the image file to your TFTP exposed folder.

  2. Boot the target and press any key to stop the automatic U-Boot boot process.

  3. Run the update command to update the entire linux partition:

    => update linux tftp <image-filename>

See Program firmware 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 UBIFS file system.

Update files from Linux

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

  1. Remount the linux partition with read/write permissions:

    $ mount -o remount,rw /dev/ubi0_0 /mnt/linux
  2. List the contents of the linux partition:

    # ls -l /mnt/linux/
    -rw-r--r--    1 weston   weston         458 Mar 10  2023 _ov_board_can1_ccmp15-dvk.dtbo
    -rw-r--r--    1 weston   weston         460 Mar 10  2023 _ov_board_can2_ccmp15-dvk.dtbo
    -rw-r--r--    1 weston   weston        1545 Mar 10  2023 _ov_board_eth0-10-100_ccmp15-dvk.dtbo
    -rw-r--r--    1 weston   weston        2128 Mar 10  2023 _ov_board_fusion10-lvds_ccmp15-dvk.dtbo
    -rw-r--r--    1 weston   weston        1999 Mar 10  2023 _ov_board_fusion7-parallel_ccmp15-dvk.dtbo
    -rw-r--r--    1 weston   weston        2262 Mar 10  2023 _ov_board_g101evn010-lvds_ccmp15-dvk.dtbo
    -rw-r--r--    1 weston   weston         415 Mar 10  2023 _ov_board_mikroe-accel2-click_ccmp15-dvk.dtbo
    -rw-r--r--    1 weston   weston         415 Mar 10  2023 _ov_board_mikroe-gyro-click_ccmp15-dvk.dtbo
    -rw-r--r--    1 weston   weston         415 Mar 10  2023 _ov_board_mikroe-i2c-to-spi-click_ccmp15-dvk.dtbo
    -rw-r--r--    1 weston   weston         336 Mar 10  2023 _ov_board_v1_ccmp15-dvk.dtbo
    -rw-r--r--    1 weston   weston         807 Mar 10  2023 _ov_som_bt_ccmp15.dtbo
    -rw-r--r--    1 weston   weston         938 Mar 10  2023 _ov_som_bt_test_ccmp15.dtbo
    -rw-r--r--    1 weston   weston         928 Mar 10  2023 _ov_som_wifi_ccmp15.dtbo
    -rw-r--r--    1 weston   weston         926 Mar 10  2023 altboot.scr
    -rw-r--r--    1 weston   weston        2295 Mar 10  2023 boot.scr
    -rw-r--r--    1 weston   weston      103555 Mar 10  2023 ccmp157-dvk.dtb
    -rw-r--r--    1 weston   weston     6818744 Mar 10  2023 zImage-ccmp15-dvk.bin
  3. Copy the file you want to the target, for example via SSH:

    $ scp zImage root@<ccmp15-ip>:/mnt/linux/zImage-ccmp15-dvk.bin