USB3 issue

 Hello.

We’ve designed our custom carrier board, which works with Orin NX CPU.
We used type C USB connector. But we don’t need it as OTG, so we configured it as a HOST.

As a result, USB2.0 part works perfectly, but when we connect USB3.0 flash drive, it also works as USB2.0 device.

Could you please take a look to our schematic and device tree? And advise possible mistake in schematic or device tree.

Thank you a lot.

Schematic:
USB3_schem.pdf (231.1 KB)
Device tree:

 61     xusb_padctl: xusb_padctl@3520000 {
 62         status = "okay";
 63         pads {
 64             usb2 {
 65                 lanes {
 66                     usb2-0 {
 67                         nvidia,function = "xusb";
 68                         status = "okay";
 69                     };
 70                     usb2-1 {
 71                         nvidia,function = "xusb";
 72                         status = "okay";
 73                     };
 74                     usb2-2 {
 75                         nvidia,function = "xusb";
 76                         status = "okay";
 77                     };
 78                 };
 79             };
 80             usb3 {
 81                 lanes {
 82                     usb3-0 {
 83                         nvidia,function = "xusb";
 84                         status = "okay";
 85                     };
 86                     usb3-1 {
 87                         nvidia,function = "xusb";
 88                         status = "okay";
 89                     };
 90                 };
 91             };
 92         };
 93 
 94         ports {
 95             usb2-0 {/* Goes to recovery port */
 96                 mode = "host";
 97                 status = "okay";
 98                 vbus-supply = <&p3768_vdd_5v_sys>;
 99             };
100             usb2-1 {/* Goes to hub */
101                 mode = "host";
102                 vbus-supply = <&p3768_vdd_av10_hub>;
103                 status = "okay";
104             };
105             usb2-2 {/* Goes to M2.E */
106                 mode = "host";
107                 vbus-supply = <&p3768_vdd_5v_sys>;
108                 status = "okay";
109             };
110             usb3-0 {/* Goes to hub */
111                 nvidia,usb2-companion = <1>;
112                 status = "okay";
113             };
114             usb3-1 {/* Goes to J5 */
115                 nvidia,usb2-companion = <0>;
116                 status = "okay";
117             };
118         };
119     };
120 
121     tegra_xudc: xudc@3550000 {
122         status = "disabled";
123         phys = <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-0}>,
124             <&{/xusb_padctl@3520000/pads/usb3/lanes/usb3-1}>;
125         phy-names = "usb2-0", "usb3-1";
126         nvidia,xusb-padctl = <&xusb_padctl>;
127     };
128 
129     tegra_xhci: xhci@3610000 {
130         status = "okay";
131         phys = <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-0}>,
132             <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-1}>,
133             <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-2}>,
134             <&{/xusb_padctl@3520000/pads/usb3/lanes/usb3-0}>,
135             <&{/xusb_padctl@3520000/pads/usb3/lanes/usb3-1}>;
136         phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-0", "usb3-1";
137         nvidia,xusb-padctl = <&xusb_padctl>;
138     };

Hi,
The device tree looks fine. Please do compliance test to ensure signal quality is good. There’s guidance of doing compliance test in download center.

Hi.

Thank you. It was hardware defect near connector. Now USB3 works fine.