On 29.06.20 11:56, Quirin Gylstorff wrote: > From: Quirin Gylstorff > > This patchset adds efibootguard, swupdate to allow A/B updates in > cip-core. The update mechanism is currently only implemented for x86_64. > > Changes V2: > - update efibootguard to v0.7 > - add swdescription and kas option to build qemu-amd64 test image > - swupdate set to upstream mirror and no longer use gitsm > > Quirin Gylstorff (5): > recipes-bsp: Add efibootguard > patches: add libubootenv > recipes-core: add swupdate > wic: Add wks files for A/B Partition update > swupdate: create swu file from wic image > > classes/extract-partition.bbclass | 26 + > classes/kconfig-snippets.bbclass | 90 ++++ > classes/swupdate-config.bbclass | 76 +++ > classes/swupdate-img.bbclass | 75 +++ > classes/wic-swu-img.bbclass | 20 + > .../0001-u-boot-add-libubootenv.patch | 169 +++++++ > kas-cip.yml | 4 + > kas/opt/ebg-swu.yml | 26 + > kas/opt/qemu-swupdate.yml | 19 + > .../efibootguard/efibootguard_0.7-git+isar.bb | 46 ++ > recipes-bsp/efibootguard/files/debian/compat | 1 + > .../efibootguard/files/debian/control.tmpl | 20 + > .../files/debian/efibootguard-dev.install | 3 + > .../files/debian/efibootguard.install | 2 + > recipes-bsp/efibootguard/files/debian/rules | 21 + > recipes-core/images/cip-core-image.bb | 10 + > recipes-core/images/files/sw-description.tmpl | 29 ++ > .../swupdate/files/debian/changelog.tmpl | 6 + > recipes-core/swupdate/files/debian/compat | 1 + > .../swupdate/files/debian/control.tmpl | 15 + > recipes-core/swupdate/files/debian/copyright | 36 ++ > recipes-core/swupdate/files/debian/rules.tmpl | 30 ++ > .../swupdate/files/debian/swupdate.examples | 2 + > .../swupdate/files/debian/swupdate.install | 2 + > .../swupdate/files/debian/swupdate.manpages | 5 + > .../swupdate/files/debian/swupdate.tmpfile | 2 + > recipes-core/swupdate/files/debian/watch | 12 + > recipes-core/swupdate/files/postinst | 2 + > recipes-core/swupdate/files/swupdate.cfg | 6 + > .../swupdate/files/swupdate.service.example | 11 + > .../swupdate/files/swupdate.socket.example | 11 + > .../swupdate/files/swupdate.socket.tmpl | 13 + > .../swupdate/files/swupdate_defconfig | 83 ++++ > .../swupdate_defconfig_efibootguard.snippet | 3 + > .../files/swupdate_defconfig_lua.snippet | 2 + > .../swupdate_defconfig_luahandler.snippet | 4 + > .../files/swupdate_defconfig_mtd.snippet | 1 + > .../files/swupdate_defconfig_u-boot.snippet | 3 + > .../files/swupdate_defconfig_ubi.snippet | 6 + > .../swupdate/files/swupdate_handlers.lua | 453 ++++++++++++++++++ > recipes-core/swupdate/swupdate.bb | 54 +++ > .../wic/plugins/source/efibootguard-boot.py | 162 +++++++ > .../wic/plugins/source/efibootguard-efi.py | 102 ++++ > wic/ebg-sysparts.inc | 8 + > wic/qemu-amd64-efibootguard.wks | 5 + > wic/simatic-ipc227e-efibootguard.wks | 5 + > wic/swupdate-partition.inc | 4 + > 47 files changed, 1686 insertions(+) > create mode 100644 classes/extract-partition.bbclass > create mode 100644 classes/kconfig-snippets.bbclass > create mode 100644 classes/swupdate-config.bbclass > create mode 100644 classes/swupdate-img.bbclass > create mode 100644 classes/wic-swu-img.bbclass > create mode 100644 isar-patches/0001-u-boot-add-libubootenv.patch > create mode 100644 kas/opt/ebg-swu.yml > create mode 100644 kas/opt/qemu-swupdate.yml > create mode 100644 recipes-bsp/efibootguard/efibootguard_0.7-git+isar.bb > create mode 100644 recipes-bsp/efibootguard/files/debian/compat > create mode 100644 recipes-bsp/efibootguard/files/debian/control.tmpl > create mode 100644 recipes-bsp/efibootguard/files/debian/efibootguard-dev.install > create mode 100644 recipes-bsp/efibootguard/files/debian/efibootguard.install > create mode 100755 recipes-bsp/efibootguard/files/debian/rules > create mode 100644 recipes-core/images/files/sw-description.tmpl > create mode 100644 recipes-core/swupdate/files/debian/changelog.tmpl > create mode 100644 recipes-core/swupdate/files/debian/compat > create mode 100644 recipes-core/swupdate/files/debian/control.tmpl > create mode 100644 recipes-core/swupdate/files/debian/copyright > create mode 100755 recipes-core/swupdate/files/debian/rules.tmpl > create mode 100644 recipes-core/swupdate/files/debian/swupdate.examples > create mode 100644 recipes-core/swupdate/files/debian/swupdate.install > create mode 100644 recipes-core/swupdate/files/debian/swupdate.manpages > create mode 100644 recipes-core/swupdate/files/debian/swupdate.tmpfile > create mode 100644 recipes-core/swupdate/files/debian/watch > create mode 100644 recipes-core/swupdate/files/postinst > create mode 100644 recipes-core/swupdate/files/swupdate.cfg > create mode 100644 recipes-core/swupdate/files/swupdate.service.example > create mode 100644 recipes-core/swupdate/files/swupdate.socket.example > create mode 100644 recipes-core/swupdate/files/swupdate.socket.tmpl > create mode 100644 recipes-core/swupdate/files/swupdate_defconfig > create mode 100644 recipes-core/swupdate/files/swupdate_defconfig_efibootguard.snippet > create mode 100644 recipes-core/swupdate/files/swupdate_defconfig_lua.snippet > create mode 100644 recipes-core/swupdate/files/swupdate_defconfig_luahandler.snippet > create mode 100644 recipes-core/swupdate/files/swupdate_defconfig_mtd.snippet > create mode 100644 recipes-core/swupdate/files/swupdate_defconfig_u-boot.snippet > create mode 100644 recipes-core/swupdate/files/swupdate_defconfig_ubi.snippet > create mode 100644 recipes-core/swupdate/files/swupdate_handlers.lua > create mode 100644 recipes-core/swupdate/swupdate.bb > create mode 100644 scripts/lib/wic/plugins/source/efibootguard-boot.py > create mode 100644 scripts/lib/wic/plugins/source/efibootguard-efi.py > create mode 100644 wic/ebg-sysparts.inc > create mode 100644 wic/qemu-amd64-efibootguard.wks > create mode 100644 wic/simatic-ipc227e-efibootguard.wks > create mode 100644 wic/swupdate-partition.inc > Thanks, applied to next. The secure boot series is on hold due to conflict. When you update it, please also make sure that at least one target covering as much as possible of your code is built via CI. Jan -- Siemens AG, Corporate Technology, CT RDA IOT SES-DE Corporate Competence Center Embedded Linux