Production Orin Nano SoM Programming

For a production orin nano SoM. Do i need it to program it for it to boot off of nvme? there’s no SD card or EMMC on the production board right? so what needs to be programmed?

Yes, there is no SD card slot or eMMC on the production module, customer can user external NVMe as storage for your product.

But i still need to flash the SoM with something right? it doesnt just work out of the package.

Of course you need to flash something with it. It won’t work if you just put a empty NVMe to it.

Did you ever know the existence of sdkmanager?

My NVMe is not empty, I’ve already flashed the NVMe with SDKManager (yes i know it exist). But the board wont boot with a fresh production SoM out of the package.

If you dont understand what i’m asking, please ask for clarification.

I am only guessing, but you’re probably asking if the production module has QSPI memory?

So basically the qspi on the module was not got flashed by sdkmanager but only the nvme has the data.

Try this

https://docs.nvidia.com/jetson/archives/r35.4.1/DeveloperGuide/text/SD/FlashingSupport.html?highlight=initrd%20flash#examples

→ To flash only QSPI on Jetson Orin series:

Alright, so using the flash_t234_qspi.xml does get the SoM to boot, but it doesnt boot into linux that i have loaded on the NVMe.

Do i need to use flash_t234_qspi_nvme.xml file instead?

I also dont know what i should be using for <rootdev>

The command i’ve been running:
sudo ./flash.sh --no-systemimg -c bootloader/t186ref/cfg/flash_t234_qspi.xml jetson-orin-nano-devkit external

Your can use nvme0n1p1 for rootdev.

I’m tryin to understand which script will help me get past this and boot from NVMe, without having to go through the whole SDK Manager setup.
What am i missing to get it to boot into linux?

Jetson UEFI firmware (version 4.1-33958178 built on 2023-08-01T19:34:02+00:00)
ESC to enter Setup.
F11 to enter Boot Manager Menu.
Enter to continue boot.
** WARNING: Test Key is used. **

Error: Could not detect network connection.
Error: Could not detect network connection.
UEFI Interactive Shell v2.2
EDK II
UEFI v2.70 (EDK II, 0x00010000)
Mapping table
FS1: Alias(s):F1:
MemoryMapped(0xB,0x16E600000,0x16E8653B7)
FS0: Alias(s):F0:
Fv(49A79A15-8F69-4BE7-A30C-A172F44ABCE7)
Press ESC in 1 seconds to skip startup.nsh or any other key to continue.
Shell>

Production_SoM_SDKManager.txt (88.9 KB)
Production_SoM_Manual_Flashing.txt (33.5 KB)

maybe check this

https://docs.nvidia.com/jetson/archives/r35.4.1/DeveloperGuide/text/SD/FlashingSupport.html#to-set-up-an-nvme-drive-manually-for-booting

That link is about setting up NVMe? But the NVMe is alright set up.

I tried to run:
$ sudo ./flash.sh jetson-orin-nano-devkit nvme0n1p1
but it seems to get stuck during flashing. See attached log file.
Flashing_Log.txt (73.9 KB)

I found this snippet in linux_for_Tegra/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/t186ref/cfg/flash_t234_qspi.xml --no-systemimg” --network usb0
external

it completed flashing, but it doesnt automatically boot into linux from NVMe file system.

SDK Manager can do, so there must be some combination of a flashing script with parameters that will get qspi flash to boot from NVMe without modifying the uefi boot order.

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