Environment Overview
Hardware:
- Jetson Orin Nano 4G Developer Kit with an external NVMe SSD. There is no eMMC or SD card.
- When the device is in recovery mode and connected to a PC, the USB scan shows the vendor and device ID as
0955:7623
.
Software:
- L4T 36.3
Issue Description
- As mentioned in the Quick Start Guide:
# Jetson Orin Nano Developer Kit (NVMe):
sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 \
-c tools/kernel_flash/flash_l4t_t234_nvme.xml -p "-c bootloader/generic/cfg/flash_t234_qspi.xml" \
--showlogs --network usb0 jetson-orin-nano-devkit internal
- According to
tools/kernel_flash/README_initrd_flash.txt
:
For a device with internal QSPI and external NVMe:
sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 \
-c tools/kernel_flash/flash_l4t_external.xml \
-p "-c bootloader/generic/cfg/flash_t234_qspi.xml --no-systemimg" --network usb0 \
<board> external
| Note: flash_l4t_external.xml
is a symlink pointing to flash_l4t_t234_nvme.xml
.
So I flashed the device using the command mentioned by Quick Start Guide. When the rootdev
parameter is set to either external
or nvme0n1p1
, in the nvme0n1p1
configuration, the root in the cmdline points to the /dev/nvme0n1p1
device alias. However, when using external
or internal
, the root in the cmdline is defined via the partition UUID pointing to the nvme0n1p1
partition.To sum up:
- For
nvme0n1p1
, the cmdline root is defined asroot=/dev/nvme0n1p1
. - For
external
orinternal
, the cmdline root uses the partition UUID to reference thenvme0n1p1
partition.
While both internal
and external
yield the same result, we are curious about what the actual difference between them is.