主控:rk3399
系统:android7.1
内核版本:4.4.126
补丁如下:
diff --git a/kernel/drivers/mfd/fusb302.c b/kernel/drivers/mfd/fusb302.c
index 2c7bb58..5b71f53 100644
--- a/kernel/drivers/mfd/fusb302.c
+++ b/kernel/drivers/mfd/fusb302.c
@@ -500,7 +500,12 @@ static int tcpm_get_cc(struct fusb30x_chip *chip, int *cc1, int *cc2)
{
if (CC_STATE_ROLE(chip) == CC_STATE_TOGSS_IS_UFP) {
*cc1 = tcpm_get_cc_pull_down(chip, TYPEC_ORIENTATION_CC1);
- *cc2 = tcpm_get_cc_pull_down(chip, TYPEC_ORIENTATION_CC2);
+ // *cc2 = tcpm_get_cc_pull_down(chip, TYPEC_ORIENTATION_CC2);
+ if (*cc1 == TYPEC_CC_VOLT_OPEN){
+ *cc2 = tcpm_get_cc_pull_down(chip, TYPEC_ORIENTATION_CC2);
+ } else {
+ *cc2 = TYPEC_CC_VOLT_OPEN;
+ }
} else if (CC_STATE_ROLE(chip) == CC_STATE_TOGSS_IS_DFP) {
if (chip->cc_state & CC_STATE_TOGSS_CC1) {
*cc1 = tcpm_get_cc_pull_up(chip, TYPEC_ORIENTATION_CC1);