OTA upgrade process rootfsA/B zone

Hello, when I use the nv_ota_start.sh script to complete OTA upgrade of AB partitions, I run the following command line: sudo ./nv_ota_start.sh ./ota/ota_payload_package.tar.gz

Then encountered an error, error message content:
Enter error update state, exiting update process…
Failed to run "update_specified_partitions_alt recovery-dtb /ota_work/external_device/images-R35-ToT/tegra234-p3767-0000-p3768-0000-a0.dtb.rec /tmp/sha1sum.tmp "
Failed to run “install_partition_with_alt /ota_work/external_device/images-R35-ToT recovery-dtb”
Failed to run “update_misc_partitions /ota_work /ota_work/external_device/images-R35-ToT”

The detailed error log information is as follows:
ota_20241209-054013.log (5.6 KB)

Is there a problem with the command I used? Or is the deployment process for an AB partition different from a single partition? Or is there a problem with my upgrade package? What is the correct process including AB partition?

hello 19179921356,

may I have more details, for instance, what’t your based L4T version for moving to r35.6.0?
please also share your steps in details for cross checking.

assume you’ve both ROOTFS_ENC and ROOTFS_AB enabled.
here’re steps to create an image. you must include ROOTFS_AB=1 for creating internal image.
for example,
please include ROOTFS_AB=1 to your 1st flash command-line.
(1) $ sudo ROOTFS_AB=1 ./tools/kernel_flash/l4t_initrd_flash.sh --showlogs -p "-c bootloader/t186ref/cfg/flash_t234_qspi.xml" \ --no-flash --network usb0 jetson-orin-nano-devkit internal
(2) $ sudo ROOTFS_ENC=1 ROOTFS_AB=1 ./tools/kernel_flash/l4t_initrd_flash.sh --showlogs --no-flash \ --external-device nvme0n1p1 -i $KEY_PATH/sym2_t234.key -p "-T 500118192" -S 50GiB \ -c ./tools/kernel_flash/flash_l4t_t234_nvme_rootfs_ab_enc.xml --external-only --append --network usb0 jetson-orin-nano-devkit external
(3) $ sudo ./tools/kernel_flash/l4t_initrd_flash.sh --showlogs --network usb0 --flash-only

The image I burned is Linux_35.6, and the instructions used to execute the burn are this:
sudo ROOTFS_AB=1 ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 -c tools/kernel_flash/flash_l4t_t234_nvme_rootfs_ab.xml -p “-c bootloader/t186ref/cfg/flash_t234_qspi.xml” --showlogs --network usb0 jetson-orin-nano-devkit internal

I want to realize OTA AB partition upgrade, but I do not see the relevant operation process in the document.

I am an OTA load package made by l4t_generate_ota_package.sh script without modification on the basis of the original burning image, and the instructions are as follows:
sudo -E ROOTFS_AB=1 ./tools/ota_tools/version_upgrade/l4t_generate_ota_package.sh --external-device nvme0n1 jetson-orin-nano-devkit R35-6

Then I put the OTA upgrade package and OTA toolkit to the board to be upgraded, and deploy it directly using nv_ota_start.sh, command: sudo ./nv_ota_start.sh ./ota/ota_payload_package.tar.gz

The final result is as described in the beginning question, am I operating the process wrong, or is it something else.

I made some changes in the ab partition table. I added a USR partition in flash_l4t_t234_nvme_rootfs_ab.xml. The contents are as follows:

I don’t know if it makes a difference

hello 19179921356,

did you meant you would like to Image-based OTA update with different partition layouts?

what’s the orders of your new added USR partition? did you also consider the size of your NVMe?
besides… it’s APP and APP_b partitions for Rootfs-A and Rootfs-B.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.