APX_readonly_VER_CRC_evidence.txt (2.4 KB)
OTA_failure.txt (409.4 KB)
failed_device_uefi_variables.txt (94.3 KB)
failed_device_uefi_readonly_check.txt (39.0 KB)
Hi NVIDIA team,
We are performing an image-based OTA upgrade on Jetson Orin NX 8GB modules:
Jetson Linux R35.4.1 -> R35.5.0 -> R36.5.0
Ubuntu 20.04 -> Ubuntu 22.04
Rootfs: external NVMe
Some devices complete the upgrade successfully, while other devices fail. The current failure rate is approximately 50%.
1. Hardware information
The successful and failed devices use the same module SKU:
Module: Jetson Orin NX 8GB
P-number: P3767-0001
BOARDID: 3767
BOARDSKU: 0001
One failed device inspected through APX/RCM reports:
FAB=303
TegraPlatformCompatSpec=3767--0001--1--jetson-orin-nano-devkit-
We have not yet completed a controlled reproduction test using a Jetson Orin NX 8GB module on the NVIDIA P3768 reference carrier board.
2. Successful and failed states
The successful device reaches:
NVMe rootfs: R36.5
A bootloader chain: R36.5
B bootloader chain: R35.5
The failed device reaches:
NVMe rootfs: R36.5
A bootloader chain: R35.4.1
B bootloader chain: R35.4.1
UEFI firmware: 4.1-33958178
The failed device finally reports:
L4TLauncher: Unable to locate L4T Support protocol: Not Found
UEFI Interactive Shell v2.2
3. OTA log observations
During both OTA stages, the logs show that the rootfs/kernel partitions were written successfully, TEGRA_BL.Cap was copied, and OsIndications was set:
Copying TEGRA_BL.Cap into /opt/nvidia/esp/EFI/UpdateCapsule
Triggering UEFI capsule update by writing ... OsIndications
OTA is successfully completed
However, after every reboot, UEFI remains at version:
4.1-33958178
Therefore, the OTA process successfully stages the Capsule, but the Capsule is not applied to either QSPI bootloader chain.
4. APX/RCM read-only inspection
We performed an APX/RCM read-only inspection of one failed device. No QSPI or NVMe partition was written, erased or modified.
The A_VER and B_VER partitions were read separately from the read-only QSPI MTD device. Both contain:
NV4
# R35 , REVISION: 4.1
BOARDID=3767 BOARDSKU=0001 FAB=303
20260701162332
0x230401
BYTES:85 CRC32:
Results:
A_VER version: R35.4.1
B_VER version: R35.4.1
Stored CRC32 field: empty
Calculated CRC32 for the first 85 bytes: 6241156E
The A_VER and B_VER raw dumps are byte-for-byte identical. The complete A and B bootloader-chain regions also have identical SHA-256 values.
This confirms that neither QSPI bootloader chain was updated to R35.5 or R36.5.
How to solve this problem?
Thanks.