I was wondering how to deploy an over the air update to Jetson AGX Xavier systems. (Without the usb recovery mode)
I have seen people mention using Ubuntu’s apt, but it’s not what we where looking for.
As an embedded device, we where looking to update the entire system: kernel, firmwares, rootfs. (Keeping the boot loaders)
It would have been fairly easy to create a u-boot script to load and program the system from compressed image files on a user partition, but u-boot was replaced by cboot for the Xavier, and I have not found similar scripting capability in cboot.
I have looked into L4T boot loader redundancy feature in older L4T release:
But it was removed from current documentation and also Jetson AGX Xavier dev kit internal drive does not contain the Slot MetaData (SMD) partition to support it.
I have also looked into cboot boot-order parameter to start the system from a different disk for the upgrade process, but without physical access to the device, SD or USB are not an option and cboot does not support nvme.
I tried the nfs boot, it’s working, but depend on an other computer, so not as robust as a stand alone solution.
So any suggestion would be greatly appreciated.
Side question: why most partitions on /dev/mmcblk0 have a _b counterpart, and do I need to update those as well?