Jetson NX jetpack 4.6.1 boot from nvme

I have NX production unit with a modified carrier board.
I have created an system.img file with the matching pinmux & device-tree and all the needed changes.

Does the jetpack 4.6.1 support flashing the OS to nvme card and booting straight from it?
or do I still need to boot first from emmc, copy the FS to the nvme and then boot from it?

and in any of the cases - how? what’s the flash.sh commands?

thanks!

Moving this topic to the Jetson Xavier NX for for visibility.

Yes, it supports, please refer to NVIDIA Jetson Linux Driver Package Software Features : Bootloader | NVIDIA Docs

can it be done using the flash.sh script and not the initrd?
what’s the command?

i’ve tried:
sudo ./flash.sh <board-name> nvme0n1p1
sudo ./flash.sh <board-name> nvme0n1
sudo ./flash.sh <board-name> external

and none of them work.

the only thing that currently works for me is flashing to the internal emmc (NX):
sudo ./flash.sh <board-name> mmcblk0p1
then copy the filesystem to the mounted SSD, manually edit the /boot/extlinux/extlinux.conf to load the rootfs from the nvme and then rebooting and then the kernel and filesystem comes both up from the nvme.

please advise on more “easy” options.

I am fairly new to all of this, so… this might not be a good/correct/best answer.
Have you tried using the SDK manager? (I have a NX with a Seeed Studio carrier and I can use SDK manager to install 4.6.1 to either the EMMC/SD or NVMe - and technically I do not have an SD card on my SOC). I have read numerous times (I think?) that the SDK manager is just a wrapper for the flash util.

The SDK manager is a nice solution for a POC.
but for ease of use I need the flash.sh
since as you said - the SDK uses flash.sh, I would like a solution for using it in cmd

Sorry - I should have been more clear about why I mentioned SDK.
I would recommend that you try the activity with the SDK and view the terminal as it proceeds to update your device (or monitor the management system via a “ps” command).
I just checked my system and there is a ${HOME}/.nvsdkm directory and a log for each time I flashed my device.

Does the following help (I am flashing my NX to the NVMe device here)?

15:03:04.636 - info: NV_L4T_FLASH_XAVIER_NX_WITH_OS_IMAGE_COMP@JETSON_XAVIER_NX_TARGETS: echo sudo ./nvsdkmanager_flash.sh --storage nvme0n1p1 --nv-auto-config --username nvidia
15:03:04.636 - info: NV_L4T_FLASH_XAVIER_NX_WITH_OS_IMAGE_COMP@JETSON_XAVIER_NX_TARGETS: sudo ./nvsdkmanager_flash.sh --storage nvme0n1p1 --nv-auto-config --username nvidia
15:03:04.636 - info: NV_L4T_FLASH_XAVIER_NX_WITH_OS_IMAGE_COMP@JETSON_XAVIER_NX_TARGETS: sudo ./nvsdkmanager_flash.sh --storage nvme0n1p1 --nv-auto-config --username nvidia
15:03:12.354 - info: NV_L4T_FLASH_XAVIER_NX_WITH_OS_IMAGE_COMP@JETSON_XAVIER_NX_TARGETS:  /home/jradtke/nvidia/nvidia_sdk/JetPack_5.0.1_DP_Linux_JETSON_XAVIER_NX_TARGETS/Linux_for_Tegra/flash.sh --no-flash --sign  -C nv-auto-config jetson-xavier-nx-devkit-qspi internal
15:05:19.653 - info: NV_L4T_FLASH_XAVIER_NX_WITH_OS_IMAGE_COMP@JETSON_XAVIER_NX_TARGETS: BOOTDEV=internal /home/jradtke/nvidia/nvidia_sdk/JetPack_5.0.1_DP_Linux_JETSON_XAVIER_NX_TARGETS/Linux_for_Tegra/flash.sh --no-flash --sign --external-device -c "tools/kernel_flash/flash_l4t_external.xml" -C nv-auto-config jetson-xavier-nx-devkit-qspi internal
15:08:23.062 - info: NV_L4T_FLASH_XAVIER_NX_WITH_OS_IMAGE_COMP@JETSON_XAVIER_NX_TARGETS: /home/jradtke/nvidia/nvidia_sdk/JetPack_5.0.1_DP_Linux_JETSON_XAVIER_NX_TARGETS/Linux_for_Tegra/flash.sh  --no-flash --rcm-boot jetson-xavier-nx-devkit-qspi mmcblk0p1

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