This file describe How to update manually the partition of SDCARD: 1. SDCARD schema of partition 2. How to populate each partition 3. How to update the kernel/devicetree 1. SDCARD schema of partition: ------------------------------ ============================================================================================ = = = = = = = = = fsbl1 = fsbl2 = ssbl = boot = vendorfs = rootfs = userfs = = = = = = = = = = mmcblk0p1 = mmcblk0p2 = mmcblk0p3 = mmcblk0p4 = mmcblk0p5 = mmcblk0p6 = mmcblk0p7 = = (1 ) = (2 ) = (3 ) = (4 ) = (5 ) = (6 ) = (7 ) = = = = = = = = = ============================================================================================ (1): Device: /dev/mmcblk0p1 Label: fsbl1 Image: arm-trusted-firmware/tf-a-phycore-stm32mp1-6-trusted.stm32 (2): Device: /dev/mmcblk0p2 Label: fsbl2 Image: arm-trusted-firmware/tf-a-phycore-stm32mp1-6-trusted.stm32 (3): Device: /dev/mmcblk0p3 Label: ssbl Image: u-boot/u-boot-phycore-stm32mp1-6-trusted.stm32 (4): Device: /dev/mmcblk0p4 Label: boot Image: st-image-bootfs-openstlinux-eglfs-phycore-stm32mp1-6.ext4 (5): Device: /dev/mmcblk0p5 Label: vendorfs Image: st-image-vendorfs-openstlinux-eglfs-phycore-stm32mp1-6.ext4 (6): Device: /dev/mmcblk0p6 Label: rootfs Image: st-image-core-openstlinux-eglfs-phycore-stm32mp1-6.ext4 (7): Device: /dev/mmcblk0p7 Label: userfs Image: st-image-userfs-openstlinux-eglfs-phycore-stm32mp1-6.ext4 2. How to populate each partition --------------------------------- - Populate partition fsbl1 (/dev/mmcblk0p1) dd if=arm-trusted-firmware/tf-a-phycore-stm32mp1-6-trusted.stm32 of=/dev/mmcblk0p1 bs=1M conv=fdatasync status=progress - Populate partition fsbl2 (/dev/mmcblk0p2) dd if=arm-trusted-firmware/tf-a-phycore-stm32mp1-6-trusted.stm32 of=/dev/mmcblk0p2 bs=1M conv=fdatasync status=progress - Populate partition ssbl (/dev/mmcblk0p3) dd if=u-boot/u-boot-phycore-stm32mp1-6-trusted.stm32 of=/dev/mmcblk0p3 bs=1M conv=fdatasync status=progress - Populate partition boot (/dev/mmcblk0p4) dd if=st-image-bootfs-openstlinux-eglfs-phycore-stm32mp1-6.ext4 of=/dev/mmcblk0p4 bs=1M conv=fdatasync status=progress - Populate partition vendorfs (/dev/mmcblk0p5) dd if=st-image-vendorfs-openstlinux-eglfs-phycore-stm32mp1-6.ext4 of=/dev/mmcblk0p5 bs=1M conv=fdatasync status=progress - Populate partition rootfs (/dev/mmcblk0p6) dd if=st-image-core-openstlinux-eglfs-phycore-stm32mp1-6.ext4 of=/dev/mmcblk0p6 bs=1M conv=fdatasync status=progress - Populate partition userfs (/dev/mmcblk0p7) dd if=st-image-userfs-openstlinux-eglfs-phycore-stm32mp1-6.ext4 of=/dev/mmcblk0p7 bs=1M conv=fdatasync status=progress 3. How to update the kernel/devicetree -------------------------------------- The kernel and devicetree are present on "boot" partition. To change kernel and devicetree, you can copy the file on this partitions: - plug SDCARD on your PC - copy kernel uImage on SDCARD sudo cp uImage /media/$USER/boot/ - copy devicetree uImage on SDCARD sudo cp stm32mp1*.dtb /media/$USER/boot/ - umount partitions of SDCARD sudo umount /media/$USER/boot/ (dont't forget to umount the other partitions of SDCARD: sudo umount `lsblk --list | grep mmcblk0 | grep part | gawk '{ print $7 }' | tr '\n' ' '` )