Hi All,
I am new to SWUpdate framework and trying my best to understand the concepts.
My aim is to implement dual-copy update scheme and I have few doubts regarding this.
1. Following some previous conversations, I came across that normal output image format like .wic, .wic.gz, .wic.xz cannot be used to build .swu image. Does that mean the image files which are part of .swu should not contain these image formats?If yes, then can you please let me know the reason for this?
2. I am using core-image-minimal to build minimal system and it creats .wic.xz image to flash to SD card and boot it using this SD card. To have dual copy scheme I have modified .wks file as below:
# long-description: Creates a partitioned SD card image.
part fsbl1 --source rawcopy --sourceparams="file=u-boot-spl.stm32" --part-name "fsbl1" --ondisk mmcblk --align 1 --size 256k
part fsbl2 --source rawcopy --sourceparams="file=u-boot-spl.stm32" --part-name "fsbl2" --ondisk mmcblk --align 1 --size 256k
part ssbl --source rawcopy --sourceparams="file=u-boot.itb" --part-name "ssbl" --ondisk mmcblk --align 1 --size 2M
part / --source rootfs --ondisk mmcblk0 --fstype=ext4 --label root --part-name "rootfs_a" --fixed-size 256 --active
part / --source rootfs --ondisk mmcblk0 --fstype=ext4 --label root --part-name "rootfs_b" --fixed-size 256
bootloader --ptable gpt
So this should create 2 partitions to have 2 rootfs. Please correct it if there are any mistakes.
And a recipe called "core-image-swupdate" which includes swupdate and swupdate-www package to add SWUpdate client on the device. Is it possible to have the output of this recipe to be .wic.xz image?
core-image-swupdate requires "
recipes-extended/images/swupdate-image.inc" and this swupdate-image.inc includes IMAGE_FSTYPES="ext4.gz.u-boot". What is this image format? Can I use this image format to directly boot from SD card? Or do I need to use to some kind of create_sdcard.sh script to prepare bootable SD card image file? For example, meta-swupdate-boards uses emmcsetup.lua script to handle dual-copy approach. A bit of explanation on how to handle this would be helpful.
As per my understanding, I can use above mentioned .wks file and create .wic image from core-image-swupdate recipe. So that I can copy this image to SD card and boot the device. Since core-image-swupdate recipe includes swupdate packages and using this swupdate client will be installed on the device. Then, a separate recipe "core-image-swu" which will create .swu update file. And this recipe will include files sw-description and core-image-swupdate.ext4.gz
(or .wic?). Again, please feel free to correct me here.
Please let me know if you need further information and if anything is confusing.
Thanks in advance. Your help will be much appreciated.
Regards,
Sourabh
P.S. Sorry for the long post but this would really help me to proceed further.