Hi all,
We’re currently having problems configuring USB in port J40 as host in a custom carrier board with Jetson Orgin AGX module p3701-004.
We’re using a direct USB-A port without Cypress USB-PD: only the USB data lines are routed to the SOM USB0 while USB power comes from a fixed 5V regulator.
In the device-tree we’ve enabled only uphy usb2-0 (we do not need usb3-1 for the moment) and set it as host as follows:
padctl@3520000 {
status = "okay";
pads {
usb2 {
status = "okay";
lanes {
usb2-0 {
nvidia,function = "xusb";
status = "okay";
};
};
};
};
ports {
usb2-0 {
mode = "host";
vbus-supply=<&vdd_5v0_usb>;
status = "okay";
};
};
};
usb@3610000 {
status = "okay";
phys = <&{/bus@0/padctl@3520000/pads/usb2/lanes/usb2-0}>;
phy-names = "usb2-0";
};
usb@3550000 {
status = "disabled";
};
Unfortunately, we’re not able to detect any device when connected to the port. Also, despite unconfigure the usb3-0, dmesg shows several errors regarding it.
[ 0.142643] usbcore: registered new interface driver usbfs
[ 0.142671] usbcore: registered new interface driver hub
[ 0.142688] usbcore: registered new device driver usb
[ 0.269447] usbcore: registered new interface driver usb-storage
[ 3.326245] usbcore: registered new interface driver usbhid
[ 3.326252] usbhid: USB HID core driver
[ 3.395950] usbcore: registered new interface driver snd-usb-audio
[ 3.518886] tegra-xusb 3610000.usb: Adding to iommu group 3
[ 3.534744] tegra-xusb 3610000.usb: Firmware timestamp: 2023-02-10 03:48:10 UTC
[ 3.534755] tegra-xusb 3610000.usb: xHCI Host Controller
[ 3.535112] tegra-xusb 3610000.usb: new USB bus registered, assigned bus number 1
[ 3.535857] tegra-xusb 3610000.usb: hcc params 0x0180ff05 hci version 0x120 quirks 0x0000000000010810
[ 3.535880] tegra-xusb 3610000.usb: irq 126, io mem 0x03610000
[ 3.535988] tegra-xusb 3610000.usb: xHCI Host Controller
[ 3.536045] tegra-xusb 3610000.usb: new USB bus registered, assigned bus number 2
[ 3.536049] tegra-xusb 3610000.usb: Host supports USB 3.1 Enhanced SuperSpeed
[ 7.054127] tegra_xudc: disagrees about version of symbol tegra_xusb_padctl_get
[ 7.054136] tegra_xudc: Unknown symbol tegra_xusb_padctl_get (err -22)
[ 7.054139] tegra_xudc: disagrees about version of symbol tegra_xusb_padctl_get_usb3_companion
[ 7.054140] tegra_xudc: Unknown symbol tegra_xusb_padctl_get_usb3_companion (err -22)
[ 7.054147] tegra_xudc: disagrees about version of symbol tegra_xusb_padctl_put
[ 7.054148] tegra_xudc: Unknown symbol tegra_xusb_padctl_put (err -22)
Executing lsusb shows the following information:
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
Could you, please, guide us in how to configure JP40 USB as a host? We think our device tree config seems to be correct, but no kernel event is even reported when we trace them.
Thanks,