# Third USB on custom board not working with JetPack 4.2

**URL:** <https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918>\
**Category:** Jetson TX2\
**Created:** [April 11, 2019, 7:24pm UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918 "2019-04-11T19:24:18Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![bmanyu](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@bmanyu](https://forums.developer.nvidia.com/u/bmanyu)\
**Post date:** [April 11, 2019, 7:24pm UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/1 "2019-04-11T19:24:18Z")

</div>

On our custom carrier board we have added a third USB port. With JetPack 3.3/L4T 28.2.1 if I patch the devicetree as mentioned on [https://elinux.org/Jetson/TX2\_USB](https://elinux.org/Jetson/TX2_USB) and the linked forum post then the third USB works. When I upgrade to JetPack 4.2/L4T 32.1 and apply the patch the third usb does not work.

The patch is:

```auto
pinctrl@3520000 {
     - vbus-2-supply = <&vdd_usb2_5v>;
     + vbus-2-supply = <&battery_reg>; 
  };

```

Any ideas?

---

<div class="post-metadata">

**Author:** ![DaneLLL](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/danelll/32/14043_2.png) [@DaneLLL](https://forums.developer.nvidia.com/u/DaneLLL)\
**Post date:** [April 12, 2019, 2:00am UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/2 "2019-04-12T02:00:53Z")

</div>

Hi,  
USB lane mapping is different on r32.1. We are working on the document. Will update.

---

<div class="post-metadata">

**Author:** ![daniel.chambers](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@daniel.chambers](https://forums.developer.nvidia.com/u/daniel.chambers)\
**Post date:** [April 15, 2019, 10:11am UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/3 "2019-04-15T10:11:13Z")

</div>

> [@DaneLLL](#):
>
> Hi,  
> USB lane mapping is different on r32.1. We are working on the document. Will update.

Hi @DaneLLL - I also have this issue and it’s currently blocking our development under JetPack 4.2. Do you have an estimate on when the documents will be ready? Thanks

---

<div class="post-metadata">

**Author:** ![stephen.haworth](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@stephen.haworth](https://forums.developer.nvidia.com/u/stephen.haworth)\
**Post date:** [April 16, 2019, 12:06pm UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/4 "2019-04-16T12:06:21Z")

</div>

I’m also having issues with the 3rd USB lane when using JP 4.2… waiting for the pending document on this one…

Not too sure if this is related, but why does the plugin-manager get disabled on boot (c-boot appear to set the status to disabled). Just wondering if this is contributing to the issue

[0005.561] I\> Disable plugin-manager status in FDT

EDIT::: Note, Rebuilding c-boot from source has fixed the disabling of plugin-manager (not too sure why the SDKManager includes a different c-boot?)… Unfortunately, this does not fix the 3rd USB (usb-2-2) issue

Thanks

---

<div class="post-metadata">

**Author:** ![eh-steve](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@eh-steve](https://forums.developer.nvidia.com/u/eh-steve)\
**Post date:** [April 16, 2019, 1:12pm UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/5 "2019-04-16T13:12:03Z")

</div>

Hi all,

I managed to get this working.

It seems like the new L4T sets the vbus-supply within the xusb\_padctl@3520000 node as well as the power tree?

I’ve rolled my changes into the patch below

```auto
Index: hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-c03-00-base.dts
<+>UTF-8
===================================================================
--- hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-c03-00-base.dts	(date 1552067277000)
+++ hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-c03-00-base.dts	(date 1555438723000)
@@ -131,8 +131,9 @@
         xhci@3530000 {
 		phys = <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(0)>,
 			<&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(1)>,
+ <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(2)>,
 			<&tegra_xusb_padctl TEGRA_PADCTL_PHY_USB3_P(0)>;
- phy-names = "utmi-0", "utmi-1", "usb3-0";
+ phy-names = "utmi-0", "utmi-1", "utmi-2", "usb3-0";
 	};
 
 	pinctrl@3520000 {
Index: hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-a00-00-base.dts
<+>UTF-8
===================================================================
--- hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-a00-00-base.dts	(date 1552067277000)
+++ hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-a00-00-base.dts	(date 1555438771000)
@@ -120,22 +120,24 @@
 		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-1}>;
- phy-names = "usb2-0", "usb2-1", "usb3-1";
+ phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-1";
 	};
 #else
 	xhci@3530000 {
 		status = "okay";
 		phys = <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(0)>,
 			<&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(1)>,
+ <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(2)>,
 			<&tegra_xusb_padctl TEGRA_PADCTL_PHY_USB3_P(1)>;
- phy-names = "utmi-0", "utmi-1", "usb3-1";
+ phy-names = "utmi-0", "utmi-1", "utmi-2", "usb3-1";
 		nvidia,boost_cpu_freq = <800>;
 	};
 #endif
 
 #if TEGRA_XUSB_PADCONTROL_VERSION >= DT_VERSION_2
-	xusb_padctl@3520000 {
+xusb_padctl@3520000 {
 		status = "okay";
 		pinctrl-0 = <&vbus_en0_default_state>;
 		pinctrl-1 = <&vbus_en1_default_state>;
@@ -195,6 +197,12 @@
 				vbus-supply = <&vdd_usb1_5v>;
 				nvidia,oc-pin = <1>;
 			};
+ usb2-2 {
+ status = "okay";
+ mode = "host";
+ vbus-supply = <&battery_reg>;
+ nvidia,oc-pin = <1>;
+ };
 			usb3-1 {
 				nvidia,usb2-companion = <1>;
 				status = "okay";
@@ -239,7 +247,7 @@
 				nvidia,lanes = "otg-2";
 				nvidia,function = "xusb";
 				nvidia,port-cap = <TEGRA_PADCTL_PORT_HOST_ONLY>;
- status = "disabled";
+ status = "okay";
 			};
 
 			e3325-usb3-std-A-SS {
Index: hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-plugin-manager/tegra186-quill-p3310-1000-a00-plugin-manager.dtsi
<+>UTF-8
===================================================================
--- hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-plugin-manager/tegra186-quill-p3310-1000-a00-plugin-manager.dtsi	(date 1552067056000)
+++ hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-plugin-manager/tegra186-quill-p3310-1000-a00-plugin-manager.dtsi	(date 1555438825000)
@@ -214,8 +214,9 @@
 				_overlay_ {
 					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}>;
- phy-names = "usb2-0", "usb2-1", "usb3-0";
+ phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-0";
 				};
 #else
 				_overlay_ {
Index: hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-platforms/tegra186-quill-power-tree-p3310-1000-a00-00.dtsi
<+>UTF-8
===================================================================
--- hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-platforms/tegra186-quill-power-tree-p3310-1000-a00-00.dtsi	(date 1552067056000)
+++ hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-platforms/tegra186-quill-power-tree-p3310-1000-a00-00.dtsi	(date 1555419663000)
@@ -106,8 +106,8 @@
 	pinctrl@3520000 {
 		vbus-0-supply = <&vdd_usb0_5v>;
 		vbus-1-supply = <&vdd_usb1_5v>;
- vbus-2-supply = <&vdd_usb2_5v>;
- vbus-3-supply = <&battery_reg>;
+ vbus-2-supply = <&battery_reg>;
+ vbus-3-supply = <&vdd_usb2_5v>;
 		vddio-hsic-supply = <&battery_reg>;
 		avdd_usb-supply = <&spmic_sd3>;
 		vclamp_usb-supply = <&spmic_sd2>;

```

---

<div class="post-metadata">

**Author:** ![bmanyu](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@bmanyu](https://forums.developer.nvidia.com/u/bmanyu)\
**Post date:** [April 16, 2019, 4:49pm UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/6 "2019-04-16T16:49:06Z")

</div>

Awesome! I’ll give it try. Thanks!

---

<div class="post-metadata">

**Author:** ![benelgiac](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@benelgiac](https://forums.developer.nvidia.com/u/benelgiac)\
**Post date:** [April 17, 2019, 9:59am UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/7 "2019-04-17T09:59:22Z")

</div>

Thank you very much, I was getting mad and saw your post. That works like a charm!

---

<div class="post-metadata">

**Author:** ![D3\_growe](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/d3_growe/32/12926_2.png) [@D3\_growe](https://forums.developer.nvidia.com/u/D3_growe)\
**Post date:** [May 2, 2019, 1:44pm UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/8 "2019-05-02T13:44:12Z")

</div>

I ran into a problem that I thought was the same as above. I’m sharing it here to hopefully save developers some trouble.

If plugin-manager is disabled on R32.1 the USB3 port will not work. It will look very much like the problem in this post but the patches above will not fix the problem. I’m not sure if it affects the other USB ports on the Tx2 but it likely does.

---

<div class="post-metadata">

**Author:** ![pranay.joshi](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@pranay.joshi](https://forums.developer.nvidia.com/u/pranay.joshi)\
**Post date:** [December 13, 2019, 1:02pm UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/9 "2019-12-13T13:02:29Z")

</div>

We were facing same issue when work on custom board. After apply #4 patch able to communicate using USB.

We are using USB 2.0 as gadgetFS device(OTG) mode in Jetson TX2(Jetpack 4.2.1) and communicate with Windows Host PC using with libUSB driver. In our application, we transfer separately a .bmp image and JSON string in bytes on one of endpoint generated using tegra-xudc node.

After number of successful transmission of Image and Text files, one of Image or Text data is not received on Windows Host PC but on Linux application we can see number of write byte as return value of write system call function and because of that application gone into halt state.

At initialisation with help of open system call create a FD for write endpoint and and that FD is use in write system call function to transfer bytes of array to Windows Host PC.

Can anyone know, what issue is this? Any debug step is there other then USB Analyzer(usbmon - is not able to capture data of USB device mode). Or is there any USB endpoint flush technique?

---

<div class="post-metadata">

**Author:** ![DaneLLL](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/danelll/32/14043_2.png) [@DaneLLL](https://forums.developer.nvidia.com/u/DaneLLL)\
**Post date:** [December 16, 2019, 8:44am UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/10 "2019-12-16T08:44:57Z")

</div>

Hi pranay.joshi,  
This topic is about device tree of USB lane mapping. Your issue looks different. Suggest you start a new topic.

---

<div class="post-metadata">

**Author:** ![CalmCar](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/calmcar/32/11119_2.png) [@CalmCar](https://forums.developer.nvidia.com/u/CalmCar)\
**Post date:** [February 15, 2020, 2:33am UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/11 "2020-02-15T02:33:35Z")

</div>

I update my version to Jetpack4.3. I reference the path to modify my dts files,the OTG port work well,but why my USB3.0 cannot work?

---

<div class="post-metadata">

**Author:** ![DaneLLL](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/danelll/32/14043_2.png) [@DaneLLL](https://forums.developer.nvidia.com/u/DaneLLL)\
**Post date:** [February 20, 2020, 8:12am UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/12 "2020-02-20T08:12:47Z")

</div>

Hi,

> [@](#):
>
> I update my version to Jetpack4.3. I reference the path to modify my dts files,the OTG port work well,but why my USB3.0 cannot work?

Some valid examples in the posts:  
[https://devtalk.nvidia.com/default/topic/1057885/jetson-tx2/usb-not-working-in-jetson-tx2-r32-2/post/5364464/#5364464](https://devtalk.nvidia.com/default/topic/1057885/jetson-tx2/usb-not-working-in-jetson-tx2-r32-2/post/5364464/#5364464)  
[https://devtalk.nvidia.com/default/topic/1066610/jetson-tx2/jetson-tx2-usb-2-3-connection-/post/5402116/#5402116](https://devtalk.nvidia.com/default/topic/1066610/jetson-tx2/jetson-tx2-usb-2-3-connection-/post/5402116/#5402116)  
For more detail of device tree programming, suggest you look at adaptation guide.

---

<div class="post-metadata">

**Author:** ![wwwaaa](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/wwwaaa/32/46657_2.png) [@wwwaaa](https://forums.developer.nvidia.com/u/wwwaaa)\
**Post date:** [June 18, 2020, 3:54am UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/13 "2020-06-18T03:54:02Z")

</div>

Hi  
I have usb2-2 enable problem on R32.1.which document can help me?

---

<div class="post-metadata">

**Author:** ![DaneLLL](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/danelll/32/14043_2.png) [@DaneLLL](https://forums.developer.nvidia.com/u/DaneLLL)\
**Post date:** [June 18, 2020, 5:15am UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/14 "2020-06-18T05:15:38Z")

</div>

Hi @wwwaaa  
Please look at adaptation guide:  
[https://developer.nvidia.com/embedded/dlc/Tegra\_Linux\_Driver\_Package\_TX2\_Adaptation\_Guide](https://developer.nvidia.com/embedded/dlc/Tegra_Linux_Driver_Package_TX2_Adaptation_Guide)  
and [the valid examples](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/12).

---

<div class="post-metadata">

**Author:** ![eh-steve](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@eh-steve](https://forums.developer.nvidia.com/u/eh-steve)\
**Post date:** [November 26, 2020, 7:05am UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/15 "2020-11-26T07:05:00Z")

</div>

For anyone looking for a Jetpack 4.3/4.4 patch:

```nohighlight
Index: hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quidll-p3310-1000-c03-00-base.dts
===================================================================
--- hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-c03-00-base.dts	(date 1552067277000)
+++ hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-c03-00-base.dts	(date 1552067277000)
@@ -125,8 +125,9 @@
         xhci@3530000 {
 		phys = <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(0)>,
 			<&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(1)>,
+ <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(2)>,
 			<&tegra_xusb_padctl TEGRA_PADCTL_PHY_USB3_P(0)>;
- phy-names = "utmi-0", "utmi-1", "usb3-0";
+ phy-names = "utmi-0", "utmi-1", "utmi-2", "usb3-0";
 	};
 
 	pinctrl@3520000 {
Index: hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-a00-00-base.dts
===================================================================
--- hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-a00-00-base.dts	(date 1552067277000)
+++ hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3310-1000-a00-00-base.dts	(date 1552067277000)
@@ -130,7 +130,7 @@
 		phys = <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(0)>,
 			<&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(1)>,
 			<&tegra_xusb_padctl TEGRA_PADCTL_PHY_USB3_P(1)>;
- phy-names = "utmi-0", "utmi-1", "usb3-1";
+ phy-names = "utmi-0", "utmi-1", "utmi-2", "usb3-1";
 		nvidia,boost_cpu_freq = <800>;
 	};
 #endif
@@ -199,7 +199,8 @@
 			usb2-2 {
 				status = "okay";
 				mode = "host";
- vbus-supply = <&vdd_usb2_5v>;
+ vbus-supply = <&battery_reg>;
+ nvidia,oc-pin = <1>;
 			};
 			usb3-0 {
 				nvidia,usb2-companion = <2>;
Index: hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3489-0888-a00-00-base.dts
===================================================================
--- hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3489-0888-a00-00-base.dts	(date 1552067277000)
+++ hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3489-0888-a00-00-base.dts	(date 1555438771000)
@@ -153,6 +153,12 @@
 				vbus-supply = <&vdd_usb1_5v>;
 				nvidia,oc-pin = <1>;
 			};
+ usb2-2 {
+ status = "okay";
+ mode = "host";
+ vbus-supply = <&battery_reg>;
+ nvidia,oc-pin = <1>;
+ };
 			usb3-0 {
 				nvidia,usb2-companion = <1>;
 				status = "okay";
@@ -197,7 +203,7 @@
 				nvidia,lanes = "otg-2";
 				nvidia,function = "xusb";
 				nvidia,port-cap = <TEGRA_PADCTL_PORT_HOST_ONLY>;
- status = "disabled";
+ status = "okay";
 			};
 
 			e3325-usb3-std-A-SS {
@@ -360,8 +366,9 @@
 	xhci@3530000 {
 		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}>;
- phy-names = "usb2-0", "usb2-1", "usb3-0";
+ phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-0";
 		status = "okay";
 
 	};
@@ -371,7 +377,7 @@
 		phys = <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(0)>,
 			<&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(1)>,
 			<&tegra_xusb_padctl TEGRA_PADCTL_PHY_USB3_P(0)>;
- phy-names = "utmi-0", "utmi-1", "usb3-0";
+ phy-names = "utmi-0", "utmi-1", "utmi-2", "usb3-0";
 		nvidia,boost_cpu_freq = <800>;
 	};
 
Index: hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3489-1000-a00-00-base.dts
===================================================================
--- hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3489-1000-a00-00-base.dts	(date 1552067277000)
+++ hardware/nvidia/platform/t18x/quill/kernel-dts/tegra186-quill-p3489-1000-a00-00-base.dts	(date 1555438771000)
@@ -153,6 +153,12 @@
 				vbus-supply = <&vdd_usb1_5v>;
 				nvidia,oc-pin = <1>;
 			};
+ usb2-2 {
+ status = "okay";
+ mode = "host";
+ vbus-supply = <&battery_reg>;
+ nvidia,oc-pin = <1>;
+ };
 			usb3-0 {
 				nvidia,usb2-companion = <1>;
 				status = "okay";
@@ -197,7 +203,7 @@
 				nvidia,lanes = "otg-2";
 				nvidia,function = "xusb";
 				nvidia,port-cap = <TEGRA_PADCTL_PORT_HOST_ONLY>;
- status = "disabled";
+ status = "okay";
 			};
 
 			e3325-usb3-std-A-SS {
@@ -369,8 +375,9 @@
 	xhci@3530000 {
 		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}>;
- phy-names = "usb2-0", "usb2-1", "usb3-0";
+ phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-0";
 		status = "okay";
 
 	};
@@ -380,7 +387,7 @@
 		phys = <&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(0)>,
 			<&tegra_xusb_padctl TEGRA_PADCTL_PHY_UTMI_P(1)>,
 			<&tegra_xusb_padctl TEGRA_PADCTL_PHY_USB3_P(0)>;
- phy-names = "utmi-0", "utmi-1", "usb3-0";
+ phy-names = "utmi-0", "utmi-1", "utmi-2", "usb3-0";
 		nvidia,boost_cpu_freq = <800>;
 	};
 

Index: hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-plugin-manager/tegra186-quill-p3489-1000-a00-plugin-manager.dtsi
===================================================================
--- hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-plugin-manager/tegra186-quill-p3489-1000-a00-plugin-manager.dtsi	(date 1552067056000)
+++ hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-plugin-manager/tegra186-quill-p3489-1000-a00-plugin-manager.dtsi	(date 1555438825000)
@@ -89,8 +89,9 @@
 #if TEGRA_XUSB_PADCONTROL_VERSION >= DT_VERSION_2
 				_overlay_ {
 					phys = <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-0}>,
- <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-1}>;
- phy-names = "usb2-0", "usb2-1";
+ <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-1}>,
+ <&{/xusb_padctl@3520000/pads/usb2/lanes/usb2-2}>;
+ phy-names = "usb2-0", "usb2-1", "usb2-2";
 				};
 #else
 				_overlay_ {
Index: hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-platforms/tegra186-quill-power-tree-p3310-1000-a00-00.dtsi
===================================================================
--- hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-platforms/tegra186-quill-power-tree-p3310-1000-a00-00.dtsi	(date 1552067056000)
+++ hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-platforms/tegra186-quill-power-tree-p3310-1000-a00-00.dtsi	(date 1552067056000)
@@ -106,8 +106,8 @@
 	pinctrl@3520000 {
 		vbus-0-supply = <&vdd_usb0_5v>;
 		vbus-1-supply = <&vdd_usb1_5v>;
- vbus-2-supply = <&vdd_usb2_5v>;
- vbus-3-supply = <&battery_reg>;
+ vbus-2-supply = <&battery_reg>;
+ vbus-3-supply = <&vdd_usb2_5v>;
 		vddio-hsic-supply = <&battery_reg>;
 		avdd_usb-supply = <&spmic_sd3>;
 		vclamp_usb-supply = <&spmic_sd2>;
Index: hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-platforms/tegra186-quill-power-tree-p3489-1000-a00-00.dtsi
===================================================================
--- hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-platforms/tegra186-quill-power-tree-p3489-1000-a00-00.dtsi	(date 1552067056000)
+++ hardware/nvidia/platform/t18x/common/kernel-dts/t18x-common-platforms/tegra186-quill-power-tree-p3489-1000-a00-00.dtsi	(date 1555419663000)
@@ -106,8 +106,8 @@
 	pinctrl@3520000 {
 		vbus-0-supply = <&vdd_usb0_5v>;
 		vbus-1-supply = <&vdd_usb1_5v>;
- vbus-2-supply = <&vdd_usb2_5v>;
- vbus-3-supply = <&battery_reg>;
+ vbus-2-supply = <&battery_reg>;
+ vbus-3-supply = <&vdd_usb2_5v>;
 		vddio-hsic-supply = <&battery_reg>;
 		avdd_usb-supply = <&spmic_sd3>;
 		vclamp_usb-supply = <&spmic_sd2>;

```

---

<div class="post-metadata">

**Author:** ![eh-steve](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@eh-steve](https://forums.developer.nvidia.com/u/eh-steve)\
**Post date:** [December 2, 2020, 8:28pm UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/16 "2020-12-02T20:28:19Z")

</div>

Also for anyone looking for a similar patch for TX1s on Jetpack 4.3/4.4 (e.g. if using pins B43/B44 - the M.2 USB2.0, as used on the second USB port of the Auvidea J100 carrier board):

```nohighlight
Index: hardware/nvidia/platform/t210/jetson/kernel-dts/tegra210-jetson-e-base-p2595-0000-a00.dts
===================================================================
--- hardware/nvidia/platform/t210/jetson/kernel-dts/tegra210-jetson-e-base-p2595-0000-a00.dts	(revision 02be95548b60fe4a0df9b2c39f1acdae0a92864a)
+++ hardware/nvidia/platform/t210/jetson/kernel-dts/tegra210-jetson-e-base-p2595-0000-a00.dts	(date 1606861033716)
@@ -515,6 +515,10 @@
 						status = "okay";
 						nvidia,function = "xusb";
 					};
+ usb2-3 {
+ status = "okay";
+ nvidia,function = "xusb";
+ };
 				};
 			};

@@ -589,6 +593,10 @@
 			usb2-2 {
 				status = "okay";
 				mode = "host";
+ };
+ usb2-3 {
+ status = "okay";
+ mode = "host";
 			};
 			usb3-0 {
 				status = "okay";
@@ -685,16 +693,18 @@
 		phys = <&{/xusb_padctl@7009f000/pads/usb2/lanes/usb2-0}>,
 		       <&{/xusb_padctl@7009f000/pads/usb2/lanes/usb2-1}>,
 		       <&{/xusb_padctl@7009f000/pads/usb2/lanes/usb2-2}>,
+ <&{/xusb_padctl@7009f000/pads/usb2/lanes/usb2-3}>,
 		       <&{/xusb_padctl@7009f000/pads/pcie/lanes/pcie-6}>,
 		       <&{/xusb_padctl@7009f000/pads/pcie/lanes/pcie-5}>;
- phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-0", "usb3-1";
+ phy-names = "usb2-0", "usb2-1", "usb2-2", "usb2-3", "usb3-0", "usb3-1";
 #else
 		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";
+ <&tegra_padctl_uphy TEGRA_PADCTL_UPHY_UTMI_P(3)>;
+ phy-names = "utmi-2", "usb3-1", "utmi-1", "usb3-0", "utmi-0", "utmi-3";
 #endif
 		nvidia,pmc-wakeup =
 			<&tegra_pmc
Index: hardware/nvidia/platform/t210/porg/kernel-dts/tegra210-porg-p3448-common.dtsi
===================================================================
--- hardware/nvidia/platform/t210/porg/kernel-dts/tegra210-porg-p3448-common.dtsi	(revision b15adf2f43095f8c207de58f1c4045b5337965e0)
+++ hardware/nvidia/platform/t210/porg/kernel-dts/tegra210-porg-p3448-common.dtsi	(date 1606860540628)
@@ -571,8 +571,9 @@
 		phys = <&{/xusb_padctl@7009f000/pads/usb2/lanes/usb2-0}>,
 				<&{/xusb_padctl@7009f000/pads/usb2/lanes/usb2-1}>,
 				<&{/xusb_padctl@7009f000/pads/usb2/lanes/usb2-2}>,
+ <&{/xusb_padctl@7009f000/pads/usb2/lanes/usb2-3}>,
 				<&{/xusb_padctl@7009f000/pads/pcie/lanes/pcie-6}>;
- phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-0";
+ phy-names = "usb2-0", "usb2-1", "usb2-2", "usb2-3","usb3-0";
 		#extcon-cells = <1>;
 		nvidia,pmc-wakeup =
 			<&tegra_pmc
Index: hardware/nvidia/platform/t210/jetson/kernel-dts/tegra210-jetson-cv-base-p2597-2180-a00.dts
===================================================================
--- hardware/nvidia/platform/t210/jetson/kernel-dts/tegra210-jetson-cv-base-p2597-2180-a00.dts	(revision 02be95548b60fe4a0df9b2c39f1acdae0a92864a)
+++ hardware/nvidia/platform/t210/jetson/kernel-dts/tegra210-jetson-cv-base-p2597-2180-a00.dts	(date 1606860431160)
@@ -583,6 +583,10 @@
 						status = "okay";
 						nvidia,function = "xusb";
 					};
+ usb2-3 {
+ status = "okay";
+ nvidia,function = "xusb";
+ };
 				};
 			};

@@ -657,6 +661,10 @@
 			usb2-2 {
 				status = "okay";
 				mode = "host";
+ };
+ usb2-3 {
+ status = "okay";
+ mode = "host";
 			};
 			usb3-0 {
 				status = "okay";
@@ -748,16 +756,18 @@
 		phys = <&{/xusb_padctl@7009f000/pads/usb2/lanes/usb2-0}>,
 		       <&{/xusb_padctl@7009f000/pads/usb2/lanes/usb2-1}>,
 		       <&{/xusb_padctl@7009f000/pads/usb2/lanes/usb2-2}>,
+ <&{/xusb_padctl@7009f000/pads/usb2/lanes/usb2-3}>,
 		       <&{/xusb_padctl@7009f000/pads/pcie/lanes/pcie-6}>,
 		       <&{/xusb_padctl@7009f000/pads/pcie/lanes/pcie-5}>;
- phy-names = "usb2-0", "usb2-1", "usb2-2", "usb3-0", "usb3-1";
+ phy-names = "usb2-0", "usb2-1", "usb2-2", "usb2-3", "usb3-0", "usb3-1";
 #else
 		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";
+ <&tegra_padctl_uphy TEGRA_PADCTL_UPHY_UTMI_P(3)>;
+ phy-names = "utmi-2", "usb3-1", "utmi-1", "usb3-0", "utmi-0", "utmi-3";
 #endif
 		nvidia,pmc-wakeup =
 			<&tegra_pmc

```

---

<div class="post-metadata">

**Author:** ![niexiaohui1996](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@niexiaohui1996](https://forums.developer.nvidia.com/u/niexiaohui1996)\
**Post date:** [December 7, 2020, 8:02am UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/17 "2020-12-07T08:02:18Z")

</div>

- Hello, have you solved your problem?

---

<div class="post-metadata">

**Author:** ![zsjalive](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@zsjalive](https://forums.developer.nvidia.com/u/zsjalive)\
**Post date:** [January 16, 2021, 3:28am UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/18 "2021-01-16T03:28:13Z")

</div>

thanks,i resolved according to your post.

---

<div class="post-metadata">

**Author:** ![yeah\_imwyx](https://developer.download.nvidia.com/images/forums/profile-default-devtalk-84.png) [@yeah\_imwyx](https://forums.developer.nvidia.com/u/yeah_imwyx)\
**Post date:** [January 21, 2021, 6:03am UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/19 "2021-01-21T06:03:40Z")

</div>

How could I use these .dts files to re-flash?

---

<div class="post-metadata">

**Author:** ![nadeemm](https://sea2.discourse-cdn.com/nvidia/user_avatar/forums.developer.nvidia.com/nadeemm/32/367020_2.png) [@nadeemm](https://forums.developer.nvidia.com/u/nadeemm)\
**Post date:** [October 18, 2021, 6:15pm UTC](https://forums.developer.nvidia.com/t/third-usb-on-custom-board-not-working-with-jetpack-4-2/72918/20 "2021-10-18T18:15:47Z")

</div>


