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-ccmp25-dvk.boot.vfat or similar on the ConnectCore MP25 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 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

  1. Power on your target and press any key to stop automatic U-Boot boot process.

  2. List the contents of the linux partition:

  3. 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.

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

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

    # ls -l /mnt/linux/
    -rwxr-xr-x    1 root     root      10894818 Apr  5  2011 Image.gz-ccmp25-dvk.bin
    -rwxr-xr-x    1 root     root          1498 Apr  5  2011 _ov_board_e55rb-i-mw346-c-mipi-dsi_ccmp25-dvk.dtbo
    -rwxr-xr-x    1 root     root          1094 Apr  5  2011 _ov_board_g101evn010-lvds_ccmp25-dvk.dtbo
    -rwxr-xr-x    1 root     root           474 Apr  5  2011 _ov_board_mikroe-accel2-click_ccmp25-dvk.dtbo
    -rwxr-xr-x    1 root     root           474 Apr  5  2011 _ov_board_mikroe-gyro-click_ccmp25-dvk.dtbo
    -rwxr-xr-x    1 root     root           474 Apr  5  2011 _ov_board_mikroe-i2c-to-spi-click_ccmp25-dvk.dtbo
    -rwxr-xr-x    1 root     root          1101 Apr  5  2011 _ov_board_mikroe-mcp2518fd-click_ccmp25-dvk.dtbo
    -rwxr-xr-x    1 root     root          1191 Apr  5  2011 _ov_board_n25q256a-spi-nor-flash_ccmp25-dvk.dtbo
    -rwxr-xr-x    1 root     root          1510 Apr  5  2011 _ov_board_nhd-3-5-640480ef-msxp-mipi-dsi_ccmp25-dvk.dtbo
    -rwxr-xr-x    1 root     root          1460 Apr  5  2011 _ov_board_usb-3-0-typec_ccmp25-dvk.dtbo
    -rwxr-xr-x    1 root     root           929 Apr  5  2011 _ov_som_bt_ccmp25.dtbo
    -rwxr-xr-x    1 root     root           927 Apr  5  2011 _ov_som_wifi_ccmp25.dtbo
    -rwxr-xr-x    1 root     root          2767 Apr  5  2011 boot.scr
    -rwxr-xr-x    1 root     root        104454 Jul 15 08:33 ccmp25-dvk.dtb
  3. Copy the file you want to the target, for example via SSH:

    $ scp Image.gz root@<ccmp25-ip>:/mnt/linux/Image.gz-ccmp25-dvk.bin