Loading drivers/power/supply/qcom/qpnp-fg-gen4.c +13 −2 Original line number Diff line number Diff line Loading @@ -264,6 +264,7 @@ struct fg_gen4_chip { bool rslow_low; bool rapid_soc_dec_en; bool vbatt_low; bool chg_term_good; }; struct bias_config { Loading Loading @@ -2348,8 +2349,16 @@ static int fg_gen4_adjust_recharge_soc(struct fg_gen4_chip *chip) new_recharge_soc = msoc - (FULL_CAPACITY - recharge_soc); fg->recharge_soc_adjusted = true; if (fg->health == POWER_SUPPLY_HEALTH_GOOD) chip->chg_term_good = true; } else { /* adjusted already, do nothing */ /* * If charge termination happened properly then * do nothing. */ if (chip->chg_term_good) return 0; if (fg->health != POWER_SUPPLY_HEALTH_GOOD) return 0; Loading @@ -2360,7 +2369,7 @@ static int fg_gen4_adjust_recharge_soc(struct fg_gen4_chip *chip) new_recharge_soc = recharge_soc; fg->recharge_soc_adjusted = false; return 0; chip->chg_term_good = false; } } else { if (!fg->recharge_soc_adjusted) Loading @@ -2379,11 +2388,13 @@ static int fg_gen4_adjust_recharge_soc(struct fg_gen4_chip *chip) /* Restore the default value */ new_recharge_soc = recharge_soc; fg->recharge_soc_adjusted = false; chip->chg_term_good = false; } } else { /* Restore the default value */ new_recharge_soc = recharge_soc; fg->recharge_soc_adjusted = false; chip->chg_term_good = false; } if (recharge_soc_status == fg->recharge_soc_adjusted) Loading Loading
drivers/power/supply/qcom/qpnp-fg-gen4.c +13 −2 Original line number Diff line number Diff line Loading @@ -264,6 +264,7 @@ struct fg_gen4_chip { bool rslow_low; bool rapid_soc_dec_en; bool vbatt_low; bool chg_term_good; }; struct bias_config { Loading Loading @@ -2348,8 +2349,16 @@ static int fg_gen4_adjust_recharge_soc(struct fg_gen4_chip *chip) new_recharge_soc = msoc - (FULL_CAPACITY - recharge_soc); fg->recharge_soc_adjusted = true; if (fg->health == POWER_SUPPLY_HEALTH_GOOD) chip->chg_term_good = true; } else { /* adjusted already, do nothing */ /* * If charge termination happened properly then * do nothing. */ if (chip->chg_term_good) return 0; if (fg->health != POWER_SUPPLY_HEALTH_GOOD) return 0; Loading @@ -2360,7 +2369,7 @@ static int fg_gen4_adjust_recharge_soc(struct fg_gen4_chip *chip) new_recharge_soc = recharge_soc; fg->recharge_soc_adjusted = false; return 0; chip->chg_term_good = false; } } else { if (!fg->recharge_soc_adjusted) Loading @@ -2379,11 +2388,13 @@ static int fg_gen4_adjust_recharge_soc(struct fg_gen4_chip *chip) /* Restore the default value */ new_recharge_soc = recharge_soc; fg->recharge_soc_adjusted = false; chip->chg_term_good = false; } } else { /* Restore the default value */ new_recharge_soc = recharge_soc; fg->recharge_soc_adjusted = false; chip->chg_term_good = false; } if (recharge_soc_status == fg->recharge_soc_adjusted) Loading