ShellAlbert / Jetson-TX2

new platform for processing video & audio
GNU Lesser General Public License v3.0
2 stars 0 forks source link

精简底板去掉电源监控芯片INA3221后USB端口不能使用的问题 #21

Open ShellAlbert opened 4 years ago

ShellAlbert commented 4 years ago

https://devtalk.nvidia.com/default/topic/1057885/jetson-tx2/usb-not-working-in-jetson-tx2-r32-2/post/5364464/

1 这里的phy-names与phys的关系是一一对应的,故有 utmi-0对应着<0xa9 0x10> utmi-1对应着<0xa9 0x11> usb3-0对应着<0xa9 0x0> 这里的<0xa9>应该是一个phandle引用句柄,那么我们继续搜索找到phandle=<0xa9>,我们发现如下: 2

ShellAlbert commented 4 years ago

我们继续查找pinctrl-0=<0xb6>所引用的节点,即找到哪一个节点的phandle=<0xb6>,我们找到了,是pinmux这个节点。因为pinctrl-names的第一个是“default",则复位上电时,”default"作为第一个被使用的引脚状态。 3

ShellAlbert commented 4 years ago

我们再找pinctrl-1=<0xac>所引用的节点 4

ShellAlbert commented 4 years ago

我们再找pinctrl-2=<0xad>所引用的节点 5

ShellAlbert commented 4 years ago

6 7

ShellAlbert commented 4 years ago

8 9 10 11 分析这些节点的引用关系,我们可以得到 usb2-0使用的vbus-supply是phandle=<0xb0>的节点,即名字为vdd-usb0-5v的regulator,受gpio控制。 usb2-1使用的vbus-supply是phandle=<0xb1>的节点,即名字为vdd-usb1-5v的regulator,受gpio控制。 usb2-2使用的vbus-supply是phandle=<0x26>的节点,即名字为vdd-ac-bat的regulator, regulator-always-on始终开启。

那么问题来了,如果使用官方的程序,那么板载电源监控I2C总线芯片INA3221,代码逻辑是 只有监控到电源正常的情况下,才控制gpio开启regulator. 那么,现在我精化了底板,去掉了INA3221,那么就需要这个regulator一直开启,那么 是不是将usb2-0和usb2-1的vbus-supply引用的节点改为regulator-name=vdd-ac-bat的就行呢?

ShellAlbert commented 4 years ago

参考这个贴子修改成功 https://devtalk.nvidia.com/default/topic/1049988/jetson-tx2/third-usb-on-custom-board-not-working-with-jetpack-4-2/post/5330117/#5330117 eh-steve#5 第5层楼的回复具有参考价植 操作方法 R32.2 cd /home/zhangshaoyan/nvidia/nvidia_sdk/JetPack_4.2._Linux_GA_P3310/Linux_for_Tegra/kernel/dtb ../dtc -I dtb -O dts -o a.dts tegra186-quill-p3310-1000-c03-00-base.dtb vim a.dts 修改完后 ../dtc -I dts -O dtb -o tegra186-quill-p3310-1000-c03-00-base.dtb a.dts 然后刷新dtb sudo ./flash.sh -r -k kernel-dtb jetson-tx2 mmcblk0p1 重启后,usb2.0与usb3.0共用一个插座的那个引脚上的usb2.0接上usb声卡可以正常被识别,正常播放音乐。

修改1:修xhci@3530000节点的phys和phy-names属性,增加utmi-2和0xa9 0x12 12 修改2:修改pinctrl@3520000节点的vbus-2-supply的值改为 vbus-2-supply= <0x26> 13 修改3:修改xusb_padctl@3520000节点中的ports/usb2-2中的vbus-supply的值改为vbus-supply=<0x26> 14 15