1. 前言
问题:
基于nvidia xavier核心板,设计载板,但是USB功能无法使用;
硬件:
OTG连接器使用Micro B VBUS_ID=GPIO30(B55) pin VBUS Detect=GPIO10(A62)
检查了USB端口VBUS pin保持5V在我们携带的板上
咨询nvidia技术人员,说是没有PD控制器,所以需要对dts进行修改调试
2. 参考修改
对于类型A,没有OTG,如果没有PD控制器,需要删除xhci和xudc下的extcon-*属性。
还需要添加一个调节器“vbus-supply”下的xusb_pad_ctl一些usb2端口伴随USB3.0端口。
必须在设备树中编写自己的extcon(如果需要使用OTG)。
vbus_id_extcon: extcon@1 {
compatible = "extcon-gpio-states";
extcon-gpio,name = "VBUS_ID";
extcon-gpio,wait-for-gpio-scan = <0>;
extcon-gpio,cable-states = <0x3 0x0
0x0 0x2
0x1 0x2
0x2 0x1>;
gpios = <&tegra_main_gpio TEGRA194_MAIN_GPIO(M, 3) 0
&tegra_main_gpio TEGRA194_MAIN_GPIO(Q, 0) 0>;
//GPIO_M3 is VBUS_DETECT pin and GPIO_Q0 is ID pin.
extcon-gpio,out-cable-names = <EXTCON_USB EXTCON_USB_HOST EXTCON_NONE>;