[RK3588-Android12] 关于如何取消usb-phy的充电检测

问题描述

RK3588如何取消usb-phy的充电检测


解决方案:

打上如下补丁

c 复制代码
diff --git a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
index bbdcf3f..21ef614 100644
--- a/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
+++ b/drivers/phy/rockchip/phy-rockchip-inno-usb2.c
@@ -1040,6 +1040,7 @@ static void rockchip_usb2phy_otg_sm_work(struct work_struct *work)
 			return;
 		} else if (rport->vbus_attached) {
 			dev_dbg(&rport->phy->dev, "vbus_attach\n");
+#if 0
 			switch (rphy->chg_state) {
 			case USB_CHG_STATE_UNDEFINED:
 				mutex_unlock(&rport->mutex);
@@ -1081,6 +1082,7 @@ static void rockchip_usb2phy_otg_sm_work(struct work_struct *work)
 			default:
 				break;
 			}
+#endif
 		} else {
 			rphy->chg_state = USB_CHG_STATE_UNDEFINED;
 			rphy->chg_type = POWER_SUPPLY_TYPE_UNKNOWN;
@@ -1158,7 +1160,7 @@ static void rockchip_usb2phy_otg_sm_work(struct work_struct *work)
 
 	mutex_unlock(&rport->mutex);
 }
-
+#if 0
 static const char *chg_to_string(enum power_supply_type chg_type)
 {
 	switch (chg_type) {
@@ -1320,6 +1322,7 @@ static void rockchip_chg_detect_work(struct work_struct *work)
 	 */
 	schedule_delayed_work(&rport->chg_work, delay);
 }
+#endif
 
 /*
  * The function manage host-phy port state and suspend/resume phy port
@@ -1803,7 +1806,7 @@ static int rockchip_usb2phy_otg_port_init(struct rockchip_usb2phy *rphy,
 	wake_lock_init(&rport->wakelock, WAKE_LOCK_SUSPEND, "rockchip_otg");
 	INIT_DELAYED_WORK(&rport->bypass_uart_work,
 			  rockchip_usb_bypass_uart_work);
-	INIT_DELAYED_WORK(&rport->chg_work, rockchip_chg_detect_work);
+//	INIT_DELAYED_WORK(&rport->chg_work, rockchip_chg_detect_work);
 	INIT_DELAYED_WORK(&rport->otg_sm_work, rockchip_usb2phy_otg_sm_work);
 
 	if (!IS_ERR(rphy->edev)) {

相关推荐
小欣加油4 小时前
leetcode3751 范围内总波动值I
java·数据结构·c++·算法·leetcode
代码中介商4 小时前
C++左值与右值:核心判断法则详解
开发语言·c++
玖玥拾4 小时前
C/C++ 基础笔记(七)
c语言·c++
珊瑚里的鱼5 小时前
手撕单例模式中的饿汉模式和懒汉模式,懒汉模式还要再多加一个C++11版本的
开发语言·c++·单例模式
zh路西法6 小时前
【Linux 串口通信】基于 C++ 多线程的同步/异步串口实现
linux·运维·c++·python
不会C语言的男孩6 小时前
C++ Primer 第12章:动态内存
开发语言·c++
thisiszdy6 小时前
<C++> 浅拷贝与深拷贝
c++
2023自学中6 小时前
Linux虚拟机 CMakeLists.txt:x86 与 ARM 双架构编译脚本
linux·c语言·c++·嵌入式
眠りたいです6 小时前
现代C++:C++17中的新库特性
开发语言·c++·c++20·c++17