DLPC350 is not showing in custom Jetson Orin Nano carrier board

I am using Jetpack 5.1.2 in my custom carrier board. I am using DLPC350 projector board though USB. I can see it in kernel debug message log but can not see it in USB list. But in Jetson orin nano devkit I can find it as soon as I connect it to USB hub.

root@nvidia:/home/jetson# sudo dmesg | grep DLPC*
[    7.332153] usb 1-1: Product: DLPC350
[    7.351124] hid-generic 0003:0451:6401.0001: hiddev96,hidraw0: USB HID v1.11 Device [Texas Instruments Inc. DLPC350] on usb-3610000.xhci-1/input0
[    7.369082] input: Texas Instruments Inc. DLPC350 Keyboard as /devices/platform/3610000.xhci/usb1/1-1/1-1:1.1/0003:0451:6401.0002/input/input0
[    7.383017] input: Texas Instruments Inc. DLPC350 Mouse as /devices/platform/3610000.xhci/usb1/1-1/1-1:1.1/0003:0451:6401.0002/input/input1
[    7.399073] hid-generic 0003:0451:6401.0002: input,hidraw1: USB HID v1.11 Keyboard [Texas Instruments Inc. DLPC350] on usb-3610000.xhci-1/input1
root@nvidia:/home/jetson# lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

It seems DLPC found it as Bus 03 but there is no Bus 3 listed in USB.

Am I missing something ?

Later I checked dbug message, it seems the projector disconnected after few seconds though the projector is runnung

root@nvidia:/home/jetson# sudo dmesg | grep usb
[    0.000000] Kernel command line: root=PARTUUID=e1c362c8-a72f-4337-a8db-415124141ee9 rw rootwait rootfstype=ext4 mminit_loglevel=4 console=ttyTCU0,115200 console=ttyAMA0,115200 firmware_class.path=/etc/firmware fbcon=map:0 net.ifnames=0 nospectre_bhb usbhid.quirks=0x0451:0x6401:0x00000400 
[    1.499205] usbcore: registered new interface driver usbfs
[    1.504709] usbcore: registered new interface driver hub
[    1.510030] usbcore: registered new device driver usb
[    4.160245] usbcore: registered new interface driver r8152
[    4.165879] usbcore: registered new interface driver asix
[    4.171432] usbcore: registered new interface driver ax88179_178a
[    4.177687] usbcore: registered new interface driver cdc_ether
[    4.183688] usbcore: registered new interface driver net1080
[    4.189495] usbcore: registered new interface driver cdc_subset
[    4.195582] usbcore: registered new interface driver zaurus
[    4.201319] usbcore: registered new interface driver cdc_ncm
[    4.207136] usbcore: registered new interface driver aqc111
[    4.229614] tegra-xusb 3610000.xhci: Adding to iommu group 0
[    4.236051] usbcore: registered new interface driver uas
[    4.241529] usbcore: registered new interface driver usb-storage
[    4.259711] usbcore: registered new interface driver xpad
[    5.457242] usbcore: registered new interface driver usbhid
[    5.462985] usbhid: USB HID core driver
[    5.849720] usbcore: registered new interface driver snd-usb-audio
[    6.809774] tegra-xusb 3610000.xhci: Firmware timestamp: 2023-02-10 03:48:10 UTC, Version: 80.05 release
[    6.819530] tegra-xusb 3610000.xhci: xHCI Host Controller
[    6.825095] tegra-xusb 3610000.xhci: new USB bus registered, assigned bus number 1
[    6.833771] tegra-xusb 3610000.xhci: hcc params 0x0180ff05 hci version 0x120 quirks 0x0000000000050810
[    6.843390] tegra-xusb 3610000.xhci: irq 216, io mem 0x03610000
[    6.849846] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.10
[    6.858372] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    6.865801] usb usb1: Product: xHCI Host Controller
[    6.870811] usb usb1: Manufacturer: Linux 5.10.120-tegra xhci-hcd
[    6.877079] usb usb1: SerialNumber: 3610000.xhci
[    6.890848] tegra-xusb 3610000.xhci: xHCI Host Controller
[    6.896403] tegra-xusb 3610000.xhci: new USB bus registered, assigned bus number 2
[    6.904194] tegra-xusb 3610000.xhci: Host supports USB 3.1 Enhanced SuperSpeed
[    6.911703] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.10
[    6.920217] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    6.927653] usb usb2: Product: xHCI Host Controller
[    6.932665] usb usb2: Manufacturer: Linux 5.10.120-tegra xhci-hcd
[    6.938942] usb usb2: SerialNumber: 3610000.xhci
[    7.151747] usb 1-1: new full-speed USB device number 2 using tegra-xusb
[    7.316332] usb 1-1: New USB device found, idVendor=0451, idProduct=6401, bcdDevice= 0.00
[    7.324796] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[    7.332153] usb 1-1: Product: DLPC350
[    7.335925] usb 1-1: Manufacturer: Texas Instruments Inc.
[    7.341480] usb 1-1: SerialNumber: LCR2
[    7.351124] hid-generic 0003:0451:6401.0001: hiddev96,hidraw0: USB HID v1.11 Device [Texas Instruments Inc. DLPC350] on usb-3610000.xhci-1/input0
[    7.369082] input: Texas Instruments Inc. DLPC350 Keyboard as /devices/platform/3610000.xhci/usb1/1-1/1-1:1.1/0003:0451:6401.0002/input/input0
[    7.383017] input: Texas Instruments Inc. DLPC350 Mouse as /devices/platform/3610000.xhci/usb1/1-1/1-1:1.1/0003:0451:6401.0002/input/input1
[    7.399073] hid-generic 0003:0451:6401.0002: input,hidraw1: USB HID v1.11 Keyboard [Texas Instruments Inc. DLPC350] on usb-3610000.xhci-1/input1
[   13.573176] usb 1-1: USB disconnect, device number 2
[   13.734718] tegra-xusb 3610000.xhci: entering ELPG done
[   19.146481] usb0: HOST MAC 1a:da:05:a7:b3:ee
[   19.146486] usb0: MAC 1a:da:05:a7:b3:ef
[   19.156064] l4tbr0: port 2(usb0) entered blocking state
[   19.156080] l4tbr0: port 2(usb0) entered disabled state
[   19.156376] device usb0 entered promiscuous mode
[  141.905819] IPv6: ADDRCONF(NETDEV_CHANGE): usb0: link becomes ready
[  141.905955] l4tbr0: port 2(usb0) entered blocking state
[  141.905962] l4tbr0: port 2(usb0) entered forwarding state

Later I found out that the projector is connected in USB0 which is acted as OTG device (On The Go), this is for force recovery and flashing. Thats why it could not be seen in USB list. This needs to change from OTG to HOST mode. In the device tree at node xusb_padctl@3520000/ports/usb2-0/, I changed mode = "otg" to mode = "host" and upload the device-tree. After making this changes, the flash could not be done.

Is there any way that USB0 can be configured as OTG when I want to flash and return back to host mode normally ?

Hi,
For custom board please do compliance test to ensure the signal quality is good. Please check

Jetson Download Center | NVIDIA Developer

Solved the issue, later found out we do not need otg mode at all according to our design. So the issue is solved.

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