Updating Kernel on Raspberry Pi Gateway (Bullseye) using mender-convert and mender client

Hello Mender Community,

I am currently using Mender to manage a fleet of Raspberry Pi-based gateways. My setup is based on the Official Raspberry Pi OS Bullseye (Lite) image, and I have integrated the Mender client.

While system updates are working perfectly for application-level changes, I am seeking clarification on how to properly perform Kernel upgrades. I have read conflicting reports online stating that kernel updates are not possible or are “non-atomic” on Raspberry Pi due to the shared FAT32 boot partition.

I would appreciate it if anyone could clarify the following:

  1. Kernel Location: In a standard mender-convert integration, is the Linux kernel relocated to the RootFS (Partition A/B)? If so, does a standard rootfs-image update automatically include the new kernel?

  2. U-Boot Role: Does the U-Boot integration provided by mender-convert allow the system to switch kernels during a rollback?

  3. Golden Image Workflow: If I perform a sudo apt upgrade (which includes a kernel update) on my “golden image” before running mender-convert, will the tool correctly pick up the new kernel and firmware?

  4. The “Not Possible” Myth: Why do some resources state that Raspberry Pi kernel updates aren’t possible with Mender? Is this referring only to the GPU firmware/bootloader, or is there a limitation I should be aware of?

Environment Details:

  • Board: Raspberry Pi 4s

  • OS: Raspberry Pi OS Bullseye (Lite)

  • Integration Method: mender client.

Thank you for your help!