Skip to content

meta-ked-imx: Use fitImageA/B instead of active/inactive

Michael Walle requested to merge feature/fix-a-b-boot into main

This is supposed to fix a problem where you can end up with two non-working images.

This can be triggered by the following actions:

  • Starting with rootfs A and fitImage_active
  • Doing an update via swupdate using a corrupted kernel image
  • fitImage_active gets renamed to fitImage_inactive
  • The corrupted kernel now in fitImage_active fails to boot
  • A fallback to rootfs A occurs: rootfs A is started together with the working fitImage_inactive
  • On the next update via swupdate the corrupted fitImage_active is renamed to fitImage_inactive ending up with two corrupted kernel images
  • The now corrupted fitImage_inactive is copied to fitImage_active and the boot is bricked

To remedy this flaw, simply swap the fitImage in sync with the rootfs. Instead of the active/inactive image we now use A/B for the kernel image and the currently used image is selected by the sys_active file.

Fixes: https://git.kontron-electronics.de/sw/ked/plan/plan-yocto/-/issues/1217.

Edited by Frieder Schrempf

Merge request reports