Enable USB2.0


I would like to examine USB2.0 on Jetson TX1 platform.
Is there anyway to use USB2.0 only on USB1 port instead of USB3.0?

Thank you!

I’m not sure what the change would be, but this seems very likely to be possible via a change to the device tree. It used to be there was a way via the kernel command line (usb_port_owner_info), but now I think this would be ignored.

Please edit tegra210-jetson-cv-base-p2597-2180-a00.dts

--- a/kernel-dts/tegra210-jetson-cv-base-p2597-2180-a00.dts
+++ b/kernel-dts/tegra210-jetson-cv-base-p2597-2180-a00.dts
@@ -567,11 +567,10 @@
                extcon-cable-names = "id";
                #extcon-cells = <1>;
                phys =  <&tegra_padctl_uphy TEGRA_PADCTL_UPHY_UTMI_P(2)>,
-                       <&tegra_padctl_uphy TEGRA_PADCTL_UPHY_USB3_P(1)>,
                        <&tegra_padctl_uphy TEGRA_PADCTL_UPHY_UTMI_P(1)>,
                        <&tegra_padctl_uphy TEGRA_PADCTL_UPHY_USB3_P(0)>,
                        <&tegra_padctl_uphy TEGRA_PADCTL_UPHY_UTMI_P(0)>;
-               phy-names = "utmi-2", "usb3-1", "utmi-1", "usb3-0", "utmi-0";
+               phy-names = "utmi-2", "utmi-1", "usb3-0", "utmi-0";
                nvidia,pmc-wakeup =
                                PMC_WAKE_TYPE_EVENT 41 PMC_TRIGGER_TYPE_HIGH>,

Hi All,

Thank you for your answers!

Hi DaneLLL,

After modified the DTS, I copied tegra210-jetson-cv-base-p2597-2180-a00.dtb and tegra210-jetson-tx1-p2597-2180-a01-devkit.dtb to eMMC rootfs at ‘/boot’ folder then rebooted the board. I would like to confirm DTB location. Is ‘/boot’ folder is the correct place for DTB?

Please refer to https://elinux.org/Jetson/TX2_DTB#TX1

Hi DaneLLL,

Thank you very much!
I have manged to flash my own DTB and it takes effect.

Back to USB stuff, I modified dts as you suggested but USB port1 does not work for both USB2.0 and USB3.0.
I just want to switch from USB3.0 to USB2.0 on port 1.

Could you please help?

Please try the patch updated in #3

Hi DaneLLL,

Thank you!
I applied latest patch and it seems okay. When I plug USB3.0 memory to USB0, it is recognized as high-speed (not super-speed).

I think the host controller is still xusb but depending on phy, USB3.0 or USB2.0 will be supported. Is my understanding correct?

Please refer to http://developer.nvidia.com/embedded/dlc/jetson-tx1-oem-product-design-guide

It is USB2.0 micro AB port. USB3.0 is not connected/supported.