关机充电时也能使用adb
闯客网 • 2018-08-08 • MTK在线解答
平台:MT8783
1:kernel-3.10/drivers/usb/gadget/android.c 中找到
#define KPOC_USB_FUNC "mtp" 改成 #define KPOC_USB_FUNC "adb"
2.1:device/mediatek/mtxxxx/init.mtxxxx.usb.rc 中
on property:sys.usb.charging=yes
write /sys/class/android_usb/android0/enable 0
write /sys/class/android_usb/android0/idVendor ${sys.usb.vid}
write /sys/class/android_usb/android0/idProduct 2008
write /sys/class/android_usb/android0/functions mtp // mtp 改成 adb
write /sys/class/android_usb/android0/enable 1
write /sys/devices/platform/mt_usb/cmode 2
2.2: drivers/usb/gadget/android.c里面用CONFIG_MTK_KERNEL_power_OFF_CHARGING 包起来的code 强制关掉.
#ifdef CONFIG_MTK_KERNEL_POWER_OFF_CHARGING 改成 #if 0//def CONFIG_MTK_KERNEL_POWER_OFF_CHARGING
#ifndef CONFIG_MTK_KERNEL_POWER_OFF_CHARGING 改成 #if 1//def CONFIG_MTK_KERNEL_POWER_OFF_CHARGING
3:/kernel-3.xxdrivers/misc/mediatek/usb20/mt6735/usb20.c mt_usb_connect函数
mt_usb_connect()
{
....
DBG(0,"cable_mode=%d\n",cable_mode);
#ifdef CONFIG_MTK_KERNEL_POWER_OFF_CHARGING
if (get_boot_mode() == KERNEL_POWER_OFF_CHARGING_BOOT
|| get_boot_mode() == LOW_POWER_OFF_CHARGING_BOOT) {
cable_mode = CABLE_MODE_NORMAL; // 请改成CABLE_MODE_NORMAL
DBG(0, "KPOC & CHARGING_HOST, force cable mode to %d\n", cable_mode);
}
#endif
...
}