之前一直没有记录工作过程的想法,现在开始慢慢想去记录和输出一些东西,废话少说,直奔主题吧。
下面是我在MTK6580 Android P PSC5415A 快充带OTG调试遇到的问题和解决方法。
一,6580 android P版本跑的是4.9的内核,先在对应项目的config里面打开otg相关的两个宏
kernel-4.9-lc\arch\arm\configs\k80_bsp_debug_defconfig 这是debug,如果user,对应改一下user的config
CONFIG_USB_MTK_OTG=y
CONFIG_USB_MTK_HDRC_HCD=y
二,usb id中断脚的配置,在otg设备没有插入时id脚为高电平,插入后为低电平。对应中断是否注册成功
可以在adb shell cat proc/interrupts 查看
kernel-4.9-lc\arch\arm\boot\dts\k80_bsp.dts
&pio {
usbiddig_pins_default: usbiddigint7default {
};
usbiddig_pins_as_int: usbiddigint@7 {
pins_cmd_dat {
pinmux = <PINMUX_GPIO7__FUNC_EINT7>;
slew-rate = <0>;
bias-pull-up = <00>;
};
};
};
&usbiddig {
pinctrl-names = "usb_default", "usbiddig_pin_init";//, "drvvbus_init", "drvvbus_low", "drvvbus_high";
pinctrl-0 = <&usbiddig_pins_default>;
pinctrl-1 = <&usbiddig_pins_as_int>;
status = "okay";
};
kernel-4.9-lc\drivers\misc\mediatek\dws\mt6580\k80_bsp.dws,注意dws在lk,pl,factory下也要做相应的改动
通过re