Orin nx ota update issue

version :jetpack 35.6.0

  1. 怎么使能bootloader AB 分区以及kernel dtb rootfs的AB分区。然后上电后怎么进行查看确认?

Hi 550399056,

Bootchain A/B is enabled by default.
Please refer to Update and Redundancy for details.

Rootfs A/B can be enabled through adding ROOTFS_AB=1 option in the flash command.
Please refer to Flashing the Target Board with a Redundant Root File Systems for details.

当我使用A/B 分区烧录镜像时,烧录不成功,log如下:
指令:

sudo ROOTFS_AB=1 ./tools/kernel_flash/l4t_initrd_flash.sh  --external-device nvme0n1  -S 8GiB  -c ./tools/kernel_flash/flash_l4t_nvme_rootfs_ab.xml jetson-orin-nano-devkit external

1.txt (288.6 KB)

(I’ve moved your topic to correct category for Orin NX)
Are you using the devkit or custom board?

Do you just want 8GiB for each rootfs (a and b)?
If so, please try using the following command to flash your board.

$ sudo ROOTFS_AB=1 ADDITIONAL_DTB_OVERLAY_OPT="BootOrderNvme.dtbo" ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 -S 8GiB -c tools/kernel_flash/flash_l4t_nvme_rootfs_ab.xml -p "-c bootloader/t186ref/cfg/flash_t234_qspi.xml" --showlogs --network usb0 jetson-orin-nano-devkit internal

我使用的是custom board.

$ sudo ROOTFS_AB=1 ADDITIONAL_DTB_OVERLAY_OPT="BootOrderNvme.dtbo" ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 -S 8GiB -c tools/kernel_flash/flash_l4t_nvme_rootfs_ab.xml -p "-c bootloader/t186ref/cfg/flash_t234_qspi.xml" --showlogs --network usb0 jetson-orin-nano-devkit internal

这里面的ADDITIONAL_DTB_OVERLAY_OPT 是做什么用的,里面有什么配置。

为什么是 internal呢?不应该是外部设备 external吗

This is used to configure using NVMe SSD as the first boot device in boot order.

It would also flash internal QSPI to confirm all bootchain has been updated to prevent any boot failed issue.

这个可以不用选择吗? 因为我们的启动只有SSD。

如果还是需要使用A/B分区的方式,只刷新QSPI ,指令应该怎么写。 我之前使用的指令是:

sudo ./flash.sh -c bootloader/t186ref/cfg/flash_t234_qspi.xml jetson-orin-nano-devkit nvme0n1p1
sudo ./tools/kernel_flash/l4t_initrd_flash.sh -p "--no-systemimg -c bootloader/t186ref/cfg/flash_t234_qspi.xml" --network usb0 jetson-orin-nano-devkit nvme0n1p1

Yes, it is optional and it should boot from NVMe SSD if you have only this boot device.

This is the expected command to flash QSPI only.
I would suggest using the following command instead.

$ sudo ./flash.sh -c bootloader/t186ref/cfg/flash_t234_qspi.xml jetson-orin-nano-devkit internal

Please note the bootchain a/b is enabled by default and they are stored in QSPI.
If you want to enable Rootfs a/b, please just add ROOTFS_AB=1 option in the flash command when you are flashing the external NVMe SSD, and you can check the flash log to confirm if it uses the correct partition layout file(cfgfile) for rootfs a/b.

我看35.6.0 版本使用的kernel 和dtb是在 /boot/ 目录下面。没有使用分区中的kernel 和dtb。

root@u-desktop:/home/u# fdisk -l
Disk /dev/nvme0n1: 119.25 GiB, 128035676160 bytes, 250069680 sectors
Disk model: SEDM2PENW-128GB                         
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 5E9187C0-4176-448C-A5AB-AE5CBFF5AA5B

Device             Start       End  Sectors  Size Type
/dev/nvme0n1p1   2682408  59305511 56623104   27G Microsoft basic data
/dev/nvme0n1p2  59305512 115928615 56623104   27G Microsoft basic data
/dev/nvme0n1p3        40    262183   262144  128M Microsoft basic data
/dev/nvme0n1p4    262184    263719     1536  768K Microsoft basic data
/dev/nvme0n1p5    263720    328487    64768 31.6M Microsoft basic data
/dev/nvme0n1p6    328488    590631   262144  128M Microsoft basic data
/dev/nvme0n1p7    590632    592167     1536  768K Microsoft basic data
/dev/nvme0n1p8    592168    656935    64768 31.6M Microsoft basic data
/dev/nvme0n1p9    656936    820775   163840   80M Microsoft basic data
/dev/nvme0n1p10   820776    821799     1024  512K Microsoft basic data
/dev/nvme0n1p11   821800   1436199   614400  300M Microsoft basic data
/dev/nvme0n1p12  1436200   1567271   131072   64M EFI System
/dev/nvme0n1p13  1567272   1731111   163840   80M Microsoft basic data
/dev/nvme0n1p14  1731112   1732135     1024  512K Microsoft basic data
/dev/nvme0n1p15  1732136   1863207   131072   64M Microsoft basic data
/dev/nvme0n1p16  1863208   2682407   819200  400M Microsoft basic data


root@u-desktop:/home/u# blkid 
/dev/nvme0n1p1: UUID="e4e3a575-b803-41fc-aa15-b374cfd32bf0" TYPE="ext4" PARTLABEL="APP" PARTUUID="fe7312be-452d-4706-8d09-4bc6815042d4"
/dev/nvme0n1p2: UUID="a736b842-4936-4e48-9d5c-e2fbdc51f4d7" TYPE="ext4" PARTLABEL="APP_b" PARTUUID="0efd19d1-0f82-44f9-9ae7-5d6adaf3569b"
/dev/nvme0n1p3: PARTLABEL="A_kernel" PARTUUID="74f51a60-e6f1-49c6-a829-83524859c107"
/dev/nvme0n1p4: PARTLABEL="A_kernel-dtb" PARTUUID="4cb8bf05-322a-4ad5-815c-144d7a5ffc63"
/dev/nvme0n1p5: PARTLABEL="reserved_for_chain_A_user" PARTUUID="07207cfe-979c-44fc-a484-565ca1a0f855"
/dev/nvme0n1p6: PARTLABEL="B_kernel" PARTUUID="44af80cc-7a74-4147-b224-b64eacbd6e0b"
/dev/nvme0n1p7: PARTLABEL="B_kernel-dtb" PARTUUID="70906f49-b788-412b-bbfe-41667cb42658"
/dev/nvme0n1p8: UUID="8ec7ad1c-e0b8-41a4-b1b1-8366aca8afc9" TYPE="ext4" PARTLABEL="reserved_for_chain_B_user" PARTUUID="56c7e27d-9cd6-4fd1-b938-0228ae76bc61"
/dev/nvme0n1p9: PARTLABEL="recovery" PARTUUID="36c7b7ca-83de-4c04-9085-1f07d040de5f"
/dev/nvme0n1p10: PARTLABEL="recovery-dtb" PARTUUID="14b13ca5-a545-4722-aac6-cd640557a609"
/dev/nvme0n1p11: UUID="82F4-5031" TYPE="vfat" PARTLABEL="RECROOTFS" PARTUUID="60e98c36-efd2-4750-8db0-67113c4ba22d"
/dev/nvme0n1p12: UUID="5007-874A" TYPE="vfat" PARTLABEL="esp" PARTUUID="022621fc-0c8f-4e7c-b6aa-9e11fa9e4609"
/dev/nvme0n1p13: PARTLABEL="recovery_alt" PARTUUID="4378a42b-2eda-4df5-9c3f-3f5ff7242808"
/dev/nvme0n1p14: PARTLABEL="recovery-dtb_alt" PARTUUID="0f3ca94f-63ce-4df5-a3e2-96139818cd7f"
/dev/nvme0n1p15: PARTLABEL="esp_alt" PARTUUID="1f211b56-e11e-49d8-95cd-f357d4fde875"
/dev/nvme0n1p16: PARTLABEL="UDA" PARTUUID="09aa7df5-05ce-4ff6-8274-a557bf357240"
/dev/loop0: SEC_TYPE="msdos" LABEL_FATBOOT="L4T-README" LABEL="L4T-README" UUID="1234-ABCD" TYPE="vfat"
/dev/zram0: UUID="45f4ae32-3740-4477-ad6a-fe948938ae87" TYPE="swap"
/dev/zram1: UUID="cf47ed27-6b7d-4892-8470-95f62c36dd17" TYPE="swap"
/dev/zram2: UUID="d2b02714-2acb-4631-bf69-b60aa4a2b509" TYPE="swap"
/dev/zram3: UUID="1dd66000-7002-4dcc-8b5e-f72abd39ee2c" TYPE="swap"

问题:
1 . 我能在flash_l4t_nvme_rootfs_ab.xml中将 kernel和dtb删除掉吗?
2. 我怎么修改后使用分区中的kernel和dtb,而不是使用rootfs中的kernel和dtb呢?
3. 为什么/dev/nvme0n1p1 2682408 起始块是2682408,算下来是1G多,那么这1G多的空间存放了什么?

We don’t suggest for them since the kernel Image/DTB from partition will be loaded once the one from /boot is not loaded successfully.

You can try to remove them under /boot directory.

Please check the Start and End Sectors in the result of fdisk -l you shared above.
It seems /dev/nvmw0n1p1 is not the first partition in the disk.
/dev/nvmw0n1p1 is behind /dev/nvme0n1p16 as following:

/dev/nvme0n1p16  1863208   2682407   819200  400M Microsoft basic data
/dev/nvme0n1p1   2682408  59305511 56623104   27G Microsoft basic data

You can also check the partition layout file(.xml) for details.

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