Flashing Orin NX "ERROR: mmcblk0p1 not found"

Working with an Orin NX 16GB module. Initial development used a Seeed J4012 / J401 booting from NVMe. Development is in Jetpack 5.1.2 / L4T 35.4.1

We’re now migrating to our baseboard, the Antmicro Nano Baseboard (not the newer Orin baseboard). We are replacing a Xavier NX module. Based on past experience, this baseboard is compatible, at least to the point of booting, with the J3509 … although DTS customization is required to access all of the cameras, peripherals.

For initial Orin bring-up we have made copies of thetegra234-p3767-0000-p3509-a02.dts file and p3509-a02+p3767-0000.conf files which we will then customize further

Our initrd flash command is:

sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device nvme0n1p1 \
      -c ./tools/kernel_flash/flash_l4t_t234_nvme.xml \
      -p "-c ./bootloader/t186ref/cfg/flash_t234_qspi.xml" \
      --showlogs --network usb0 jetson-orin-nano-antmicro nvme0n1p1

During boot, we halt at:

[   10.036088] Run /init as init process
[   10.052301] Root device found: mmcblk0p1
[   20.159607] ERROR: mmcblk0p1 not found

I believe this is in the RCM boot? The question is whether this is a hardware/kernel issue (that is, we should be able to see a /dev/mmcblk0p1 device, but for some reason we can’t), or a configuration issue (that is, rootfs for RCM shouldn’t be /dev/mmcblk0p1 but should be something else instead).

I’ve attached the full transcript from l4t_initrd_flash.sh and console while running the flash command…

Any help would be appreciated…

flash_output_2024-09-18.txt (262.6 KB)
trisect2_output_2024-09-18.txt (79.4 KB)

Your flash command didn’t start any flash attempt at all. Only --no-flash is executed.

Directly read the end of it can tell that.

Please use the command from the quick start guide. You only need to change the board config, the rest of parameters are not needed to be changed.

https://docs.nvidia.com/jetson/archives/r35.5.0/DeveloperGuide/IN/QuickStart.html#to-flash-the-jetson-developer-kit-operating-software

Sorry. I am running the flash manually per the instructions

cd bootloader
sudo bash ./flashcmd.txt

which produces the log files I attached above.

Which commands from the link should I use?

Jetson Orin Nano Developer Kit (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" \
  --showlogs --network usb0 jetson-orin-nano-devkit internal

yes, use that command. Replace the board config to the one that you are using.

So to confirm the only difference is “internal” versus “nvme0n1p1” for the last argument?

no, the xml file is also different.

Just to follow up, I was eventually able to install to the Orin NX in the Antmicro baseboard using the stock Jetpack 5.1.2 BSP and root FS. I did need to modify to prevent EEPROM reads and the GPIO_M / HDMI issue mentioned in the 5.1.2 Changelog.

Once booted I can replace the OS with a custom kernel and DTS

Not clear what is broken for flashing with the modified BSP but it is not worth investigating at this point.

Previous error log indicates your flash attempt tries to find “mmcblk0p1”. But this thing indicates a emmc on it which does not exist on Orin NX and Nano.

What you said for "EEPROM reads and the GPIO_M / HDMI issue " has nothing to do with this either.

I think it is still related to flash command things.