[0004.038] I> ########## USB boot ##########
[0004.047] W> No valid slot number is found in scratch register
[0004.048] W> Return default slot: _a
[0004.059] I> USB Firmware Version: 60.06 release
[0004.114] I> regulator of usb2-0 already enabled
[0004.120] I> regulator of usb2-1 already enabled
[0004.127] I> enabling 'vdd-usb2-5v' regulator
[0005.191] I> USB 2.0 port 2 new high-speed USB device detected
[0005.192] W> WARNING: event and command not matching, cmd_trb_ptr = 0xa0e9e800, cmd_ring.dma = 0xa0e9e840
[0005.193] E> slot id is 1
[0005.194] W> WARNING: event and command not matching, cmd_trb_ptr = 0xa0e9e800, cmd_ring.dma = 0xa0e9e840
[0005.204] W> WARNING: event and command not matching, cmd_trb_ptr = 0xa0e9e800, cmd_ring.dma = 0xa0e9e840
[0005.206] I>
[0005.206] I> Enumerated USB Device 0bda:5489
[0005.208] I>
[0005.209] E> Enumerated device doesnt belong to MSD class or protocol is not bulk-only!!
[0005.217] E> USBMSD: Failed to initialize Enumerated USB device either not an MSD device or supported protoco[0005.227] E> USBMSD: Failed to open usbmsd open, 0.
[0005.231] E> Error opening USBMSD driver 0, err: 7c7c0312
[0005.237] E> Failed to initialize device 5-0
[0005.241] E> USB boot failed, err: 2088502034
After some investigation I realized that the device being complained about is the Realtek 4 port USB hub on the carrier board. 0bda:5489. CBoot is testing that for MSD class and bulk transfer (which it won’t have) and then then completely bails and fails to test any other enumerated USB devices.
Shouldn’t there be a loop enumerating the devices and moving on the the next one if the conditions aren’t met? I don’t see one in the CBoot sources.
On my host, I flashed the sd card image (nv-jetson-nx-sd-card-image-r32.4.2) to an SSD.
I attached the SSD to a USB<>SATA adapter and plugged it into a running NX and verified that I could see the device and partitions including kernel-dtb and kernel-dtb_b.
I powered the NX off and removed the SD card from the NX module.
I powered the NX back on.
I got the error posted above and the boot process stopped.
CBoot isn’t even checking the USB<>SATA adapter. It’s still checking the hub (0bda:5489) for MSD and bulk transfer and when it fails, it doesn’t move on to the actual USB devices.
Sorry, I should have been clearer. I had tried with a pen drive and an SD card adapter. It never gets beyond testing the hub for MSD and bulk transfer.
Ah well. Maybe it’s just me. I don’t actually need the capability anyway so there’s no need to troubleshoot further unless someone else encounters the issue.