Fail to boot from USB connected SSD

I am working on Jetson Orin NX based custom board.
I’m trying to boot from USB connected SSD.
I used the commands in the documentation.

$ sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device sda1 \
  -c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/t186ref/cfg/flash_t234_qspi.xml" \
  --showlogs --network usb0 p3509-a02+p3767-0000 internal

Flashing is no problems but it fails on 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,0x42EA00000,0x42ECA30BF)
      FS0: Alias(s):F0:
          Fv(49A79A15-8F69-4BE7-A30C-A172F44ABCE7)
      FS2: Alias(s):HD2f0b0b:;BLK1:
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3610000
,0x364FFFF)/USB(0x5,0x0)/USB(0x1,0x0)/HD(1,GPT,1DA82FE9-627B-400F-A832-D8E217A3D
102,0x186F28,0x6E00000)
      FS3: Alias(s):HD2f0b0l:;BLK3:
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3610000
,0x364FFFF)/USB(0x5,0x0)/USB(0x1,0x0)/HD(11,GPT,4DC6189E-8CF3-4F6B-B599-343093F3
C16B,0x11EB28,0x20000)
     BLK0: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3610000
,0x364FFFF)/USB(0x5,0x0)/USB(0x1,0x0)
     BLK7: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3610000
,0x364FFFF)/USB(0x5,0x0)/USB(0x1,0x0)/HD(2,GPT,71746C2D-60BD-4C4D-9837-873AD80F9
E79,0x28,0x20000)
     BLK8: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3610000
,0x364FFFF)/USB(0x5,0x0)/USB(0x1,0x0)/HD(3,GPT,0C9A34C0-1D56-46F9-B7E4-544BEE33F
74F,0x20028,0x380)
     BLK9: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3610000
,0x364FFFF)/USB(0x5,0x0)/USB(0x1,0x0)/HD(4,GPT,1DFBDAF4-6F06-496B-83D4-872DB0676
363,0x203A8,0x10000)
    BLK10: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3610000
,0x364FFFF)/USB(0x5,0x0)/USB(0x1,0x0)/HD(5,GPT,1908B6D4-EB12-46C0-A4D5-F142C57B6
907,0x303A8,0x20000)
    BLK11: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3610000
,0x364FFFF)/USB(0x5,0x0)/USB(0x1,0x0)/HD(6,GPT,390F928E-DE69-4B2C-918B-B32CDCE3C
311,0x503A8,0x380)
    BLK12: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3610000
,0x364FFFF)/USB(0x5,0x0)/USB(0x1,0x0)/HD(7,GPT,13948F1F-B110-4560-BCC2-001DE68E9
367,0x50728,0x10000)
    BLK13: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3610000
,0x364FFFF)/USB(0x5,0x0)/USB(0x1,0x0)/HD(8,GPT,353EC421-16CB-47EF-B26A-7C3425BE6
B39,0x60728,0x28000)
    BLK14: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3610000
,0x364FFFF)/USB(0x5,0x0)/USB(0x1,0x0)/HD(9,GPT,79042CB7-D048-4755-B0C3-454CE4987
86A,0x88728,0x400)
     BLK2: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3610000
,0x364FFFF)/USB(0x5,0x0)/USB(0x1,0x0)/HD(10,GPT,53A33106-FB48-46CC-BCA8-1664C665
3D60,0x88B28,0x96000)
     BLK4: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3610000
,0x364FFFF)/USB(0x5,0x0)/USB(0x1,0x0)/HD(12,GPT,38D6FBF9-6E78-4DBC-835B-254FCEB2
DF51,0x13EB28,0x28000)
     BLK5: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3610000
,0x364FFFF)/USB(0x5,0x0)/USB(0x1,0x0)/HD(13,GPT,247D598A-3127-4217-932E-495918EC
8C5D,0x166B28,0x400)
     BLK6: Alias(s):
          VenHw(1E5A432C-0466-4D31-B009-D4D9239271D3)/MemoryMapped(0xB,0x3610000
,0x364FFFF)/USB(0x5,0x0)/USB(0x1,0x0)/HD(14,GPT,2D440F90-B9A4-45FC-B4CF-506FB09E
D840,0x166F28,0x20000)
Press ESC in 5 seconds to skip startup.nsh or any other key to continue.Press ESC in 4 seconds to skip startup.nsh or any other key to continue.Press ESC in 3 seconds to skip startup.nsh or any other key to continue.Press ESC in 2 seconds to skip startup.nsh or any other key to continue.Press ESC in 1 seconds to skip startup.nsh or any other key to continue.
Shell> 

[logs]
uart(custom-board).log (32.5 KB)
flash(host-pc).log (261.0 KB)
[enviroments]
host-pc: ubuntu18.04
module: OrinNX 16GB
SSD(USB connected): ssd-ph500u3-bc/n (500GB)

I tried the USB stick(64GB) with the same command. They worked normally.

I want to know what differences between USB stick and SSD affect their operation.
and, how can I Boot from USB connected SSD?

Hi,

Is this issue able to reproduce on Orin NX + xavier nx devkit?

If you can, could you share flash log on host + device side and boot up log too?

Regardless of this issue could be reproduce on devkit, please enable full UEFI log by rebuilding the UEFI debug binary.

Is this issue able to reproduce on Orin NX + xavier nx devkit?

I don’t have xavier nx devkit.However, as far as I have tried with AGX Orin DEVKIT, it works fine.

please enable full UEFI log by rebuilding the UEFI debug binary.

Here is a full UEFI log
Uart-full-UEFI.log (247.9 KB)

Is same usb port able to boot up another usb stick? Is that what you tried to say in previous comment?

Is same usb port able to boot up another usb stick?

Same usb port is able to boot up with another usb stick.

Could you share your initrd flash log on both device side and host side?

Here are both logs.

device side
Uart_device.log (250.3 KB)
host side
initrd_flash.log (261.2 KB)

Hi,

Could you put the same SSD to orin AGX devkit and dump the flash log (uart + host) again? Thanks.

Also, the flash command shall be similar except the board config is different.

I flashed orin AGX devkit with follwing commands.

sudo ./tools/kernel_flash/l4t_initrd_flash.sh --external-device sda1   -c tools/kernel_flash/flash_l4t_external.xml -p "-c bootloader/t186ref/cfg/flash_t234_qspi.xml"   --showlogs --network usb0  p3737-0000+p3701-0000 internal

Here are both flashing logs.
Uart_AGXorin.log (453.4 KB)
host_AGXorin.log (278.4 KB)

At first glance, it seems to be booting from the SSD.
But, If I select SSD from UEFI and boot, it fails.
So, my previous statement that it worked with AGXOrin may be a mistake.
I think it is booting from emmc and mounting the SSD as Rootfs.
Select_SSD_from_UEFI.log (23.2 KB)

Did you ever change the content of the xml file?

Yes, I have changed num_sectors. However, it is in its default state now.

Hi @S.Harumoto

I tried another larger size SSD disk on my side but cannot reproduce your issue. It seems only specific to that one you have. Could you also test other kind of large size USB SSD and see if working?

Could you also test other kind of large size USB SSD and see if working?

I don’t have other kind of large size USB SSD.

By the way, does it matter that the SSD I tried is USB 3.2?

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