ORIN NX Using 3-way USB for device tree adaptation

Using Customized Board to Use the three-way USB3.0 The schematic diagram is shown below.
image





Currently, only USB0 is recognized as USB 3.0.

My device tree configuration is shown below

" xusb_padctl: xusb_padctl@3520000 {
status = “okay”;
pads {
usb2 {
lanes {
usb2-0 {
nvidia,function = “xusb”;
status = “okay”;
};
usb2-1 {
nvidia,function = “xusb”;
status = “okay”;
};
usb2-2 {
nvidia,function = “xusb”;
status = “okay”;
};
};
};
usb3 {
lanes {
usb3-0 {
nvidia,function = “xusb”;
status = “okay”;
};
usb3-1 {
nvidia,function = “xusb”;
status = “okay”;
};
usb3-2 {
nvidia,function = “xusb”;
status = “okay”;
};
};
};
};

	ports {
		usb2-0 {/* Goes to recovery port */
			mode = "otg";
			status = "okay";
			vbus-supply = <&p3768_vdd_5v_sys>;
			usb-role-switch;
			port {
				typec_p0: endpoint {
					remote-endpoint = <&fusb_p0>;
				};
			};
		};
		usb2-1 {/* Goes to hub */
			mode = "host";
			vbus-supply = <&p3768_vdd_av10_hub>;
			status = "okay";
		};
		usb2-2 {/* Goes to M2.E */
			mode = "host";
			vbus-supply = <&p3768_vdd_5v_sys>;
			status = "okay";
		};
		usb3-0 {/* Goes to hub */
			nvidia,usb2-companion = <0>;
			status = "okay";
		};
		usb3-1 {/* Goes to J5 */
			nvidia,usb2-companion = <1>;
			status = "okay";
		};
		usb3-2 {
			nvidia,usb2-companion = <2>;
			status = "okay";
		};
	};
};

tegra_xudc: xudc@3550000 {
	status = "okay";
	phys = <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-0}>,
		<&{/xusb_padctl@3520000/pads/usb3/lanes/usb3-1}>;
	phy-names = "usb2-0", "usb3-1";
	nvidia,xusb-padctl = <&xusb_padctl>;
};

tegra_xhci: xhci@3610000 {
	status = "okay";
	phys = <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-0}>,
		<&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-1}>,
		<&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-2}>,
		<&{/xusb_padctl@3520000/pads/usb3/lanes/usb3-0}>,
		<&{/xusb_padctl@3520000/pads/usb3/lanes/usb3-1}>,
		<&{/xusb_padctl@3520000/pads/usb3/lanes/usb3-2}>;
	phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-0", "usb3-1","usb3-2";
	nvidia,xusb-padctl = <&xusb_padctl>;
}; "

https://docs.nvidia.com/jetson/archives/r35.5.0/DeveloperGuide/HR/JetsonModuleAdaptationAndBringUp/JetsonAgxOrinSeries.html?highlight=universal%20serial%20bus#porting-the-universal-serial-bus

For type C, please check with the type C controller vendor.

Thank you for your reply, the Type A port also cannot be recognized as 3.0.

Then please read the above document to configure your device tree.

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