How to upgrade the rootfs with L4T R32.6.1(Jetpack4.6)

Hi,

We have a official devkit xavier , added an 500GB SSD (Nvme) to it (J1 interface).
I flashed the system in NVME mode using SDKManager, and enable redundancy with “sudo nv_update_engine --enable-ab”,and generat the Bootloader Update Payload due to official document,but when I use command " sudo nv_update_engine -i bl-only --payload bl_update_payload",I encountered an error:

 sudo nv_update_engine -i bl-only --payload bl_update_payload 
[sudo] password for nvidia: 
Nvidia A/B-Redundancy Update tool Version 2.1
Got bl payload file: bl_update_payload
current slot 0
SM: S11
Set slot 1 as unbootable and start updating.
Start running: /usr/sbin/nv_bootloader_payload_updater --no-dependent-partition bl_update_payload
Got update payload: bl_update_payload
Tegra User Block Device: /dev/disk/by-partlabel
Tegra Boot Block Device: /dev/mmcblk0boot0
HEADER: MAGIC NVIDIA__BLOB__V2
HEX_VALUE 16909857
BLOB_SIZE 50080934
HEADER_SIZE 48
NUMBER_OF_ELEMENTS 21
HEADER_TYPE 0
UNCOMP_SIZE 50080934
MB1_RATCHET_LV 0
MTS_RATCHET_LV 0
ROLLBACK_FUSE_LV 0
config COMPATIBLE_SPEC not found in /etc/nv_boot_control.conf
Device TN Spec: 2888-400-0004-K.0-1-2-jetson-xavier-mmcblk0p1
config COMPATIBLE_SPEC not found in /etc/nv_boot_control.conf
Device TN Spec: 2888-400-0004-K.0-1-2-jetson-xavier-mmcblk0p1
Device is fused board.
ENTRY_TABLE:
PART  POS  LEN  VER TNSPEC TYPE UPDATABLE
spe-fw  2568  94960  12897    1  1
mb2  97528  181232  12897    1  1
cpu-bootloader  278760  469840  12897    1  1
secure-os  748600  410560  12897    1  1
bpmp-fw  1159160  856352  12897    1  1
eks  2015512  5136  12897    1  1
adsp-fw  2020648  81312  12897    1  1
rce-fw  2101960  272752  12897    1  1
mts-preboot  2374712  24016  12897    1  1
mts-mce  2398728  143200  12897    1  1
mts-proper  2541928  3430416  12897    1  1
sc7  5972344  65504  12897    1  1
bpmp-fw-dtb  6037848  993104  12897  2888-400-0004-K.0-1-2-jetson-xavier-mmcblk0p1  1  1
bootloader-dtb  7030952  253168  12897  2888-400-0004-K.0-1-2-jetson-xavier-mmcblk0p1  1  1
VER  7284120  102  12897  2888-400-0004-K.0-1-2-jetson-xavier-mmcblk0p1  1  1
mb1  7284222  249312  12897  2888-400-0004-K.0-1-2-jetson-xavier-mmcblk0p1  2  1
BCT  7533534  2888  12897  2888-400-0004-K.0-1-2-jetson-xavier-mmcblk0p1  2  1
MB1_BCT  7536422  30864  12897  2888-400-0004-K.0-1-2-jetson-xavier-mmcblk0p1  1  1
MEM_BCT  7567286  198656  12897  2888-400-0004-K.0-1-2-jetson-xavier-mmcblk0p1  1  1
kernel  7765942  42061824  12897    1  1
kernel-dtb  49827766  253168  12897  2888-400-0004-K.0-1-2-jetson-xavier-mmcblk0p1  1  1
Saving Entry table to /opt/ota_package/entry_table
Slot could not be opened spe-fw
spe-fw fail to write 
Writing to partitions failed.
OTA Blob update failed. Status: 5
/usr/sbin/nv_bootloader_payload_updater --no-dependent-partition failed.
Slot 1 update failed
Error: installing bootloader updates failed: 1280

How can I solve this problem?

Thanks!
BR.

Please share us what is the content inside your /etc/nv_boot_control.conf.

Hi WayneWWW,

Thanks for your reply!

My " /etc/nv_boot_control.conf" is :

TNSPEC 2888-400-0004-K.0-1-2-jetson-xavier-nvme0n1p1
TEGRA_CHIPID 0x19
TEGRA_OTA_BOOT_DEVICE /dev/mmcblk0boot0
TEGRA_OTA_GPT_DEVICE /dev/mmcblk0boot1

Thanks!

BR.

What was your command to generate the BUP blob?

Hi WayneWWW,

Thanks for your reply!
The command is :
sudo FAB=400 BOARDID=2888 FUSELEVEL=fuselevel_production BOARDSKU=0004 BOARDREV=K.0 ./build_l4t_bup.sh jetson-xavier nvme0n1p1

Thanks!
BR.

Hi,

Could you describe the whole process of how you flash your nvme with sdkm?

Also, please check if this service is running fine.

nv-l4t-bootloader-config.service

Hi WayneWWW,

Thanks for your reply!

I’m going to try it again. If it happens again, I’m going to repeat the steps.

Thanks!
BR.

Hi WayneWWW,

I tried several times, but I couldn’t reproduce the problem. I didn’t know whether I was happy or unhappy.

“nv-l4t-bootloader-config.service” as follow:

[sudo] password for nvidia: 
● nv-l4t-bootloader-config.service - Configure QSPI bootloader service
   Loaded: loaded (/opt/nvidia/l4t-bootloader-config/nv-l4t-bootloader-config.service; bad; vendor preset: enabled)
   Active: inactive (dead) since Thu 2021-12-30 11:21:06 CST; 2h 11min ago
  Process: 7398 ExecStart=/opt/nvidia/l4t-bootloader-config/nv-l4t-bootloader-config.sh (code=exited, status=0/SUCCESS)
 Main PID: 7398 (code=exited, status=0/SUCCESS)

Dec 30 11:21:05 neolix-center nv-l4t-bootloader-config.sh[7398]: Restore link: kernel_b to /dev/nvme0n1p4
Dec 30 11:21:05 neolix-center nv-l4t-bootloader-config.sh[7398]: Restore link: kernel-dtb to /dev/nvme0n1p5
Dec 30 11:21:05 neolix-center nv-l4t-bootloader-config.sh[7398]: Restore link: kernel-dtb_b to /dev/nvme0n1p6
Dec 30 11:21:05 neolix-center nv-l4t-bootloader-config.sh[7398]: Restore link: recovery to /dev/nvme0n1p7
Dec 30 11:21:05 neolix-center nv-l4t-bootloader-config.sh[7398]: Restore link: recovery-dtb to /dev/nvme0n1p8
Dec 30 11:21:05 neolix-center nv-l4t-bootloader-config.sh[7398]: Restore link: kernel-bootctrl to /dev/nvme0n1p9
Dec 30 11:21:05 neolix-center nv-l4t-bootloader-config.sh[7398]: Restore link: kernel-bootctrl_b to /dev/nvme0n1p10
Dec 30 11:21:05 neolix-center nv-l4t-bootloader-config.sh[7398]: Restore link: RECROOTFS to /dev/nvme0n1p11
Dec 30 11:21:05 neolix-center nv-l4t-bootloader-config.sh[7398]: Restore link: UDA to /dev/nvme0n1p12
Dec 30 11:21:05 neolix-center nv-l4t-bootloader-config.sh[7398]: 2888-400-0004--1-2-jetson-agx-xavier-devkit-

If the problem recurs, I’ll let you know.

Now I can use BUP to upgrade BootLoader normally, but I don’t know how to switch rootfs.

I successfully flashed NVME SSD using command " sudo ROOTFS_AB=1 ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1 -c ./tools/kernel_flash/flash_l4t_nvme_rootfs_ab.xml -S 10GiB --showlogs jetson-xavier nvme0n1p1 ", I can see "/dev/nvme0n1p1 " and “/dev/nvme0n1p2”, "/dev/nvme0n1p1 " is current APP partition ,how can I switch to another one?

Thanks!
BR.

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