Xavier NX capsule update failed

software: Jetson Linux 35.4.1
steps:
[computer]
sudo ./l4t_generate_soc_bup.sh t19x
./generate_capsule/l4t_generate_soc_capsule.sh -i bootloader/payloads_t19x/bl_only_payload -o ./TEGRA_BL.Cap t194
scp TEGRA_BL.Cap @:~/

[Target]
ll /dev/disk/by-partlabel/esp
lrwxrwxrwx 1 root root 16 Mar 15 15:04 /dev/disk/by-partlabel/esp → …/…/mmcblk0p26
sudo mkdir /mnt/esp
sudo mount /dev/mmcblk0p26 /mnt/esp
cd /mnt/esp/EFI
sudo mkdir UpdateCapsule
cd UpdateCapsule/
sudo cp ~/TEGRA_BL.Cap .

cd /sys/firmware/efi/efivars/
printf “\x07\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00” > /tmp/var_tmp.bin
sudo dd if=/tmp/var_tmp.bin of=OsIndications-8be4df61-93ca-11d2-aa0d-00e098032b8c bs=12;sync
reboot

I saw the device reboot twice

I execute “sudo nvbootctrl dump-slots-info” command
log:
Error: config COMPATIBLE_SPEC not found in /etc/nv_boot_control.conf
Current version: 35.4.1
Capsule update status: 0
Current bootloader slot: A
Active bootloader slot: A
num_slots: 2
slot: 0, status: normal
slot: 1, status: normal

The bootloader slot has not changed!

Hi,

I think that might be an issue here?
What do you have in /etc/nv_boot_control.conf? How did you flash the device originally?

Would it boot with slot B if you manually change it?

Hello,
nv_boot_control.conf:
TNSPEC 3668-100-0001-H.0-1-2-jetson-xavier-nx-
TEGRA_CHIPID 0x19
TEGRA_OTA_BOOT_DEVICE /dev/mtdblock0
TEGRA_OTA_GPT_DEVICE /dev/mtdblock0

I flashed the device in a customized way
I execute command is “sudo ./tools/kernel_flash/l4t_initrd_flash.sh --flash-only --network usb0 --massflash 5”

Do I add the COMPATIBLE_SPEC parameter manually?

I don’t know how you generated the flashing package.
Please re-flash with flash.sh and repeat your workflow.

sudo ./flash.sh jetson-xavier-nx-devkit internal

I reverted my changes and generated new nv_boot_control.conf

TNSPEC 3668-301-0001-F.0-1-2-jetson-xavier-nx-
COMPATIBLE_SPEC 3668-301-0001-F.0-1-2-jetson-xavier-nx-
TEGRA_LEGACY_UPDATE false
TEGRA_BOOT_STORAGE mmcblk0
TEGRA_EMMC_ONLY false
TEGRA_CHIPID 0x19
TEGRA_OTA_BOOT_DEVICE /dev/mtdblock0
TEGRA_OTA_GPT_DEVICE /dev/mtdblock0

I re-executed the capsule update operation, but it still failed.

sudo nvbootctrl dump-slots-info
Current version: 35.4.1
Capsule update status: 0
Current bootloader slot: A
Active bootloader slot: A
num_slots: 2
slot: 0, status: normal
slot: 1, status: normal

Then is this working?
Is it still the same if you flash the device again with the default BSP?

What do I need to change manually?
I have used the default bsp flash the device,the result is still the same

Hi,

We’ll verify locally and reply to you later.
Thanks.

I solved the problem, thank you

How did you do it?

I didn’t restore the jetson_board_spec.cfg file correctly

OK, that’s fine.
Glad to hear you solved it.

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