現象:usb3.0接口用usb線連接電腦無法識別
原因:android10使用kernel4.19和android9使用kernel4.4的dts設置有區別:
1. DWC3 的power-domains屬性,resets 屬性,extcon 屬性 引用位置不同。在Linux-4.4內核,這
三個屬性是放在 DWC3 控制器的父節點(usbdrd3),而在Linux-4.19內核,這三個屬性移到了
DWC3 控制器的子節點(usbdrd_dwc3)。
2. 在配置 Type-C to Type-A USB 2.0/3.0 OTG DTS 時,Linux-4.19內核需要在USB 控制器子節點
(usbdrd_dwc3)中增加 extcon 屬性的配置,才能支持軟件切換OTG 模式,而Linux-4.4 內核無
此要求。
修改代碼:
V:\rk3399_q_test\kernel\arch\arm64\boot\dts\rockchip\rk3399-tve-ind3399a.dtsi
&usbdrd_dwc3_0 {
status = "okay";
dr_mode = "otg";
extcon = <&u2phy0>; //加這一句
};
V:\rk3399_q_test\device\rockchip\rk3399\init.rk3399.rc
# update cpusets feature nodes for rk3399 tablet
write /dev/cpuset/foreground/cpus 0-5
write /dev/cpuset/foreground/boost/cpus 4-5
write /dev/cpuset/background/cpus 0
write /dev/cpuset/system-background/cpus 0-3
write /dev/cpuset/top-app/cpus 0-5
write /sys/devices/system/cpu/cpufreq/policy4/interactive/target_loads "65 1008000:70
write /sys/devices/platform/ff770000.syscon/ff770000.syscon:usb2-phy@e450/otg_mode otg //加這一句
參考:Rockchip_RK3399_Developer_Guide_USB_DTS_CN_V1.3