Hi Nvidia,
目前在Jetpack 6 有遇到 otg 異常問題
以下是我們otg部分的硬體配置
VBUS => PZ.01
VID => PEE.05
會遇到異常的手法如下:
開機時不接任何usb設備 , 進入OS後插入 micro-usb 轉 Type A 隨身碟後就會跳出一連串錯誤 ( 詳細如 dmesg.log )
另外,有透過以下指令檢查狀態, 狀態是可以正常切換的 ( none / host / device )
cat /sys/class/usb_role/usb2-0-role-switch/role
再麻煩協助有可能造成這段錯誤訊息的原因
Thanks.
dmesg.log (67.9 KB)
tegra234-p3701-0004-orin.dts.txt (311.9 KB)
1 Like
Hi @ztna5483
I notice you said “開機時不接任何usb設備”. So this issue won’t happen if you connect some usb device during boot? Just want to know more detail about this issue.
對, 我只要隨便接一個 usb2.0 的裝置開機
之後進入OS接上 micro-usb to Type A 隨身碟(host)
就不會跳出這些異常
Hi,
Did you ever configure this board on rel-35 before? Just want to know if a new issue on rel-36.
先前我們在 Jetpack5.0.2, 5.1.1 沒有這個問題
Hi,
Could you provide “micro-usb to Type A 隨身碟” vendor and model information, and attach its picture?
Hi @WayneWWW ,
SanDisk Cruzer Blade 16G
ADATA C008 32GB
BENEVO micro-USB to USB Type A
UGREEN micro-USB to USB Type A
Hi,
I mean also the adapter you are using. Not only USB drive.
Hi @ztna5483
We notice something weird here.
From the log, it seems there is a USB 2.0 hub connected before booting because the USB hub is detected at kernel time 2.318s. This means no matter what situation, there is always a usb device (hub) connected on Jetson since the beginning. Could you confirm if that is true?
[ 2.479336] hub 1-4:1.0: USB hub found
[ 2.479873] hub 1-4:1.0: 4 ports detected
And I don’t observe there is other USB device connected before the “xHCI host controller not responding”. Only see USB device mode gadgets are enabled and disabled before “xHCI host controller not responding”.
If there is usb adapter + usb driver connected, then there should have device connected info first.
Hi @WayneWWW
我們有接一顆 on board 的 usb 2.0 hub,
前陣子我有問 usb 相關的問題, 這是目前 usb 線路的配置:AGX Orin usb reboot issue
這邊為了釐清可能與先前硬體設計問題有關, 有先請我們的硬體先將這顆 usb2.0 hub 斷電;
(不過 dts usb3-0, usb3-1, usb3-2 的 “nvidia,usb2-companion” node 沒做修改, 因為我不確定這邊沒接的話要填什麼值? )
但結果還是會遇到“xHCI host controller not responding” 錯誤
dmesg.log (63.5 KB)
If it is not in use, then you should disable those usb nodes in the device tree too.
Please attach your log after you have done this.
Hi @WayneWWW
但我的 usb 3.0 的訊號還是有接的
只是沒有同時用到 usb3.0 + usb2.0 訊號
所以 nvidia,usb2-companion = <N>;
是可以刪除的? 類似以下這樣:
usb3-0 {
status = "okay";
};
usb3-1 {
status = "okay";
};
usb3-2 {
status = "okay";
};
It looks like you still have hardware design mistake… every usb3 signal must have one usb2 signal as companion.
Hi @WayneWWW
已請我們的硬體協助修改線路, 確認先前 usb問題 可以解決
不過 otg 仍有問題…
同樣是開機不接任何的usb設備,
進入OS後在接上 micro-usb to Type A 隨身碟
就會出現“xHCI host controller not responding” 錯誤
附上修改線路後的 dts & dmesg
dmesg.txt (64.7 KB)
tegra234-p3701-0004-orin.dts.txt (311.9 KB)
Hi,
We got similar issue reported from other partner but their reproduce method is on NV devkit.
We will check their case first and see if it could resolve your case.
1 Like
Hi @ztna5483
Please check if this kernel patch can resolve your issue.
->kernel/3rdparty/canonical/linux-jammy/kernel-source
diff --git a/drivers/usb/host/xhci-tegra.c b/drivers/usb/host/xhci-tegra.c
index 3e3956a..b9fa693 100644
--- a/drivers/usb/host/xhci-tegra.c
+++ b/drivers/usb/host/xhci-tegra.c
@@ -1371,6 +1371,7 @@
tegra->otg_usb3_port = tegra_xusb_padctl_get_usb3_companion(tegra->padctl,
tegra->otg_usb2_port);
+ pm_runtime_get_sync(tegra->dev);
if (tegra->host_mode) {
/* switch to host mode */
if (tegra->otg_usb3_port >= 0) {
@@ -1400,6 +1401,7 @@
}
tegra_xhci_set_port_power(tegra, true, true);
+ pm_runtime_mark_last_busy(tegra->dev);
} else {
if (tegra->otg_usb3_port >= 0)
@@ -1407,6 +1409,7 @@
tegra_xhci_set_port_power(tegra, true, false);
}
+ pm_runtime_put_autosuspend(tegra->dev);
2 Likes
system
Closed
July 17, 2024, 2:56am
28
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.