检查dts配置发现&usbdrd_dwc3_0 配置为host模式,但硬件上配置是otg模式,将&usbdrd_dwc3_0配置更改为otg模式。
arch/arm64/boot/dts/rockchip/rk3399-box.dtsi
&usbdrd_dwc3_0 {
dr_mode = "otg";
status = "okay";
};
查看中断信号,发现usb中断触发时,显示仍是host模式,再次检查发现在rk3399-android.dtsi中有对&usbdrd_dwc3_0的覆盖配置,删除rk3399-android.dtsi中的&usbdrd_dwc3_0配置
arch/arm64/boot/dts/rockchip/rk3399-android.dtsi
-&usbdrd_dwc3_0 {
- dr_mode = "host";
- phys = <&u2phy0_otg>;
- phy-names = "usb2-phy";
- maximum-speed = "high-speed";
- status = "okay";
-};
部分调试命令
查看中断
cat proc/interrupts
查看usb接口模式
cat sys/kernel/debug/fe800000.dwc3/mode