Error at Orin Nano with NVMe Flash in NVMe and boot from NVMe

Hi Team , I am using Orin NX module . I followed steps provided in 1) link: “Quick Start — Jetson Linux Developer Guide documentation
and
2) specific to Orin Nano. I used command to flash default L4T BSP .
"Jetson Orin Nano Developer Kit and Jetson Orin NX Developer Kit (NVMe) command is “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”

But i got error like attached ( host device and target device logs attached please

-----at host error logs------------
[ 0.5088 ] ERROR: might be timeout in USB write.
Error: Return value 3
Command tegrarcm_v2 --chip 0x23 0 --pollbl --download applet applet_t234_sigheader.bin.encrypt
Reading board information failed.
Error: failed to generate images
Cleaning up…

hostNvcmdFail.txt (13.7 KB)
targetlogs2_nvidcmd (51.9 KB)

Please can you suggest what would be issue .

Hi @varada.k

Are you sure that is Orin Nano devkit carrier board? The error log indicates eeprom on address 0xae is not present.

Please be aware that any board that is not from NV is possibly a custom board…

This error generally only comes from a custom carrier board… because custom carrier board won’t have a eeprom on it…

You can try to take a picture and the sticker on your board and show me first…

Yes It is custom board.

So sdkmanager cannot flash it from the beginning.

Is this made by you or from some vendor?

That custom board is designed from our team member.
Requirement is here , need to flash in NVMe and boot it from same.

Then please refer to the developer guide to disable the cvb eeprom read from config file.

This is same step if you ever made a Orin AGX custom board before… I saw you had custom board on orin AGX last year…

1 Like

Yes i will follow.
we did Orin AGX Custom board. But EEPROM we used as dev kit

Hi @WayneWWW

I completely masked as below in “Linux_for_Tegra/bootloader/t186ref/BCT/tegra234-mb2-bct-misc-p3767-0000.dts”

tegra234-mb1-bct-misc-p3767-0000
/ {
mb2-misc {
eeprom {
/*cvm_eeprom_i2c_instance = <0>;
cvm_eeprom_i2c_slave_address = <0xa0>;
cvm_eeprom_read_size = <0x100>;
cvb_eeprom_i2c_instance = <0x0>;
cvb_eeprom_i2c_slave_address = <0xae>;
cvb_eeprom_read_size = <0x100>;
*/
};
};
};

Flashed But i got loader error like attached target and host logs.

for quick reference target logs as below :

[0035.872] W> Firewall readback mismatch
[0035.878] I> Task: Load MB2/Applet/FSKP (0x5000ca55)
[0035.882] I> Loading MB2 Applet
[0035.885] I> Slot: 1
[0035.888] E> BLOCK_DEV: Failed to open blockdev.
[0035.892] E> LOADER: Failed to open blockdev 0(0).
[0035.898] E> LOADER: Failed to get storage info for binary 21 from loader.
[0035.905] C> LOADER: Could not read binary 21.
[0035.909] E> Failed to load MB2
[0035.912] C> Task 0x0 failed (err: 0x27228311)
[0035.917] E> Top caller module: MB2_PARAMS, error module: LOADER, reason: 0x11, aux_info: 0x83
[0035.925] C> Boot Info Table status dump :
1
host.txt (13.3 KB)
target.txt (3.1 KB)

Please i need your guidance.

Hi,

Just to confirm, so you didn’t know which document to refer to, right…?

The modification is still wrong…

https://docs.nvidia.com/jetson/archives/r35.3.1/DeveloperGuide/text/HR/JetsonModuleAdaptationAndBringUp/JetsonOrinNxNanoSeries.html?highlight=cvb_eeprom#eeprom-modifications

CVB means the carrier board.

CVM means the module.

You only changed the carrier board, so you should only change cvb related. CVM should not be touched.

@WayneWWW
Thanks for link.

  1. I tried flash with config but i am getting error at target like below

[0054.288] I> Loading MB2 Applet
[0054.292] I> Slot: 1
[0054.294] E> BLOCK_DEV: Failed to open blockdev.

  1. I used command
    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
  2. attached host and target logs

From target logs NVMe detected. Please can you guide me , I am not sure where i am doing wrong.
host2.txt (13.3 KB)
target2 (55.0 KB)

Flash with which config? and which content?

Did you change anything after I shared you the document link ?

Only tegra234-mb2-bct-misc-p3767-0000.dts

So what did you change?

#include “tegra234-mb2-bct-common.dtsi”

/ {
mb2-misc {
eeprom {
cvm_eeprom_i2c_instance = <0>;
cvm_eeprom_i2c_slave_address = <0xa0>;
cvm_eeprom_read_size = <0x100>;
cvb_eeprom_i2c_instance = <0x0>;
cvb_eeprom_i2c_slave_address = <0xae>;
cvb_eeprom_read_size = <0x0>;
};
};
};
hmecd001409@DSC:~/BSP/flashdir/Linux_for_Tegra$

Could you search “tegra234-mb2-bct-misc-p3767-0000.dts” under your Linux_for_Tegra/bootloader and share the result?

Use find command.

  1. Find
    hmecd001409@DSC:~/BSP/flashdir/Linux_for_Tegra$ find bootloader/ -name “tegra234-mb2-bct-misc-p3767-0000.dts”
    bootloader/tegra234-mb2-bct-misc-p3767-0000.dts
    bootloader/t186ref/BCT/tegra234-mb2-bct-misc-p3767-0000.dts
    find: ‘bootloader/mnt’: Bad message
    hmecd001409@DSC:~/BSP/flashdir/Linux_for_Tegra$

  2. CAT

hmecd001409@DSC:~/BSP/flashdir/Linux_for_Tegra/bootloader$ cat tegra234-mb2-bct-misc-p3767-0000.dts
/dts-v1/;

#include “tegra234-mb2-bct-common.dtsi”

/ {
mb2-misc {
eeprom {
cvm_eeprom_i2c_instance = <0>;
cvm_eeprom_i2c_slave_address = <0xa0>;
cvm_eeprom_read_size = <0x100>;
cvb_eeprom_i2c_instance = <0x0>;
cvb_eeprom_i2c_slave_address = <0xae>;
cvb_eeprom_read_size = <0x0>;
};
};
};
hmecd001409@DSC:~/BSP/flashdir/Linux_for_Tegra/bootloader$

please make sure both files have the same content.

hmecd001409@DSC:~/BSP/flashdir/Linux_for_Tegra$ cat bootloader/t186ref/BCT/tegra234-mb2-bct-misc-p3767-0000.dts
/dts-v1/;

#include “tegra234-mb2-bct-common.dtsi”

/ {
mb2-misc {
eeprom {
cvm_eeprom_i2c_instance = <0>;
cvm_eeprom_i2c_slave_address = <0xa0>;
cvm_eeprom_read_size = <0x100>;
cvb_eeprom_i2c_instance = <0x0>;
cvb_eeprom_i2c_slave_address = <0xae>;
cvb_eeprom_read_size = <0x0>;
};
};
};
hmecd001409@DSC:~/BSP/flashdir/Linux_for_Tegra$

Hi @WayneWWW , Yes both are same content.

Do you have orin nano devkit? If so, could you put same module to orin nano devkit and use current setup to flash and see if it can work?