The linux partition contains the following elements:
-
The kernel binary.
-
Device tree blobs and overlays.
-
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 FAT file system.
Update files from U-Boot
To list the contents of the linux partition on MMC media, run ls mmc x:y in the U-Boot console where x is the device index (starting at 0) and y is the partition index (starting at 1). For example:
=> ls mmc 0:1
9906645 Image.gz-ccimx8x-sbc-pro.bin
135527 ccimx8x-sbc-pro.dtb
540 _ov_board_flexcan1_ccimx8x-sbc-pro.dtbo
964 _ov_board_hsd101pfw2-lvds_ccimx8x-sbc-pro.dtbo
467 _ov_board_lpuart3_ccimx8x-sbc-pro.dtbo
1529 _ov_board_lt9812-hdmi-dsi0_ccimx8x-sbc-pro.dtbo
1497 _ov_board_lvds1_ccimx8x-sbc-pro.dtbo
729 _ov_board_parallel-camera_ccimx8x-sbc-pro.dtbo
1050 _ov_board_pcie-card_ccimx8x-sbc-pro.dtbo
1132 _ov_board_pcie-modem_ccimx8x-sbc-pro.dtbo
731 _ov_board_user-leds_ccimx8x-sbc-pro.dtbo
1074 _ov_board_v1-v3_ccimx8x-sbc-pro.dtbo
712 _ov_som_bt_ccimx8x.dtbo
530 _ov_som_mca-keypad_ccimx8x.dtbo
2791 _ov_som_quad_ccimx8x.dtbo
808 _ov_som_wifi_ccimx8x.dtbo
2490 boot.scr
17 file(s), 0 dir(s)
To update the files from U-Boot console, run updatefile command. See Update files within partition.
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 -l /mnt/linux -rwxr-xr-x 1 root root 9901398 Mar 1 01:54 Image.gz-ccimx8x-sbc-pro.bin -rwxr-xr-x 1 root root 540 Mar 1 01:54 _ov_board_flexcan1_ccimx8x-sbc-pro.dtbo -rwxr-xr-x 1 root root 964 Mar 1 01:54 _ov_board_hsd101pfw2-lvds_ccimx8x-sbc-pro.dtbo -rwxr-xr-x 1 root root 467 Mar 1 01:54 _ov_board_lpuart3_ccimx8x-sbc-pro.dtbo -rwxr-xr-x 1 root root 1529 Mar 1 01:54 _ov_board_lt9812-hdmi-dsi0_ccimx8x-sbc-pro.dtbo -rwxr-xr-x 1 root root 1497 Mar 1 01:54 _ov_board_lvds1_ccimx8x-sbc-pro.dtbo -rwxr-xr-x 1 root root 729 Mar 1 01:54 _ov_board_parallel-camera_ccimx8x-sbc-pro.dtbo -rwxr-xr-x 1 root root 1050 Mar 1 01:54 _ov_board_pcie-card_ccimx8x-sbc-pro.dtbo -rwxr-xr-x 1 root root 1132 Mar 1 01:54 _ov_board_pcie-modem_ccimx8x-sbc-pro.dtbo -rwxr-xr-x 1 root root 731 Mar 1 01:54 _ov_board_user-leds_ccimx8x-sbc-pro.dtbo -rwxr-xr-x 1 root root 1074 Mar 1 01:54 _ov_board_v1-v3_ccimx8x-sbc-pro.dtbo -rwxr-xr-x 1 root root 712 Mar 1 01:54 _ov_som_bt_ccimx8x.dtbo -rwxr-xr-x 1 root root 530 Mar 1 01:54 _ov_som_mca-keypad_ccimx8x.dtbo -rwxr-xr-x 1 root root 2791 Mar 1 01:54 _ov_som_quad_ccimx8x.dtbo -rwxr-xr-x 1 root root 808 Mar 1 01:54 _ov_som_wifi_ccimx8x.dtbo -rwxr-xr-x 1 root root 2490 Mar 1 01:54 boot.scr -rwxr-xr-x 1 root root 135527 Mar 1 01:54 ccimx8x-sbc-pro.dtb
To update the files from user space, remount the linux partition with read/write permissions:
~$ mount -o remount,rw /dev/mmcblk0p1 /mnt/linux
From your development machine, you can now copy the files to the target via ssh. For example:
~$ scp Image.gz root@<cc8x-ip>:/mnt/linux/Image.gz-ccimx8x-sbc-pro.bin
When building from Digi Embedded Yocto, all the elements are packaged together in a single file:
-
dey-image-qt-xwayland-ccimx8x-sbc-pro.boot.vfat or similar on the ConnectCore 8X 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>