Loading drivers/power/supply/qcom/qpnp-fg-gen4.c +15 −1 Original line number Diff line number Diff line Loading @@ -3548,7 +3548,7 @@ static int fg_psy_get_property(struct power_supply *psy, { struct fg_gen4_chip *chip = power_supply_get_drvdata(psy); struct fg_dev *fg = &chip->fg; int rc = 0; int rc = 0, val; int64_t temp; switch (psp) { Loading @@ -3558,6 +3558,15 @@ static int fg_psy_get_property(struct power_supply *psy, case POWER_SUPPLY_PROP_CAPACITY_RAW: rc = fg_get_msoc_raw(fg, &pval->intval); break; case POWER_SUPPLY_PROP_CC_SOC: rc = fg_get_sram_prop(&chip->fg, FG_SRAM_CC_SOC, &val); if (rc < 0) { pr_err("Error in getting CC_SOC, rc=%d\n", rc); return rc; } /* Show it in centi-percentage */ pval->intval = div_s64((int64_t)val * 10000, CC_SOC_30BIT); break; case POWER_SUPPLY_PROP_VOLTAGE_NOW: if (fg->battery_missing) pval->intval = 3700000; Loading Loading @@ -3594,6 +3603,9 @@ static int fg_psy_get_property(struct power_supply *psy, case POWER_SUPPLY_PROP_CHARGE_NOW_RAW: rc = fg_gen4_get_charge_raw(chip, &pval->intval); break; case POWER_SUPPLY_PROP_CHARGE_NOW: pval->intval = chip->cl->init_cap_uah; break; case POWER_SUPPLY_PROP_CHARGE_FULL: rc = fg_gen4_get_learned_capacity(chip, &temp); if (!rc) Loading Loading @@ -3775,6 +3787,7 @@ static int fg_property_is_writeable(struct power_supply *psy, static enum power_supply_property fg_psy_props[] = { POWER_SUPPLY_PROP_CAPACITY, POWER_SUPPLY_PROP_CAPACITY_RAW, POWER_SUPPLY_PROP_CC_SOC, POWER_SUPPLY_PROP_TEMP, POWER_SUPPLY_PROP_VOLTAGE_NOW, POWER_SUPPLY_PROP_VOLTAGE_OCV, Loading @@ -3787,6 +3800,7 @@ static enum power_supply_property fg_psy_props[] = { POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN, POWER_SUPPLY_PROP_VOLTAGE_MAX_DESIGN, POWER_SUPPLY_PROP_CHARGE_NOW_RAW, POWER_SUPPLY_PROP_CHARGE_NOW, POWER_SUPPLY_PROP_CHARGE_FULL, POWER_SUPPLY_PROP_CHARGE_COUNTER, POWER_SUPPLY_PROP_CHARGE_COUNTER_SHADOW, Loading Loading
drivers/power/supply/qcom/qpnp-fg-gen4.c +15 −1 Original line number Diff line number Diff line Loading @@ -3548,7 +3548,7 @@ static int fg_psy_get_property(struct power_supply *psy, { struct fg_gen4_chip *chip = power_supply_get_drvdata(psy); struct fg_dev *fg = &chip->fg; int rc = 0; int rc = 0, val; int64_t temp; switch (psp) { Loading @@ -3558,6 +3558,15 @@ static int fg_psy_get_property(struct power_supply *psy, case POWER_SUPPLY_PROP_CAPACITY_RAW: rc = fg_get_msoc_raw(fg, &pval->intval); break; case POWER_SUPPLY_PROP_CC_SOC: rc = fg_get_sram_prop(&chip->fg, FG_SRAM_CC_SOC, &val); if (rc < 0) { pr_err("Error in getting CC_SOC, rc=%d\n", rc); return rc; } /* Show it in centi-percentage */ pval->intval = div_s64((int64_t)val * 10000, CC_SOC_30BIT); break; case POWER_SUPPLY_PROP_VOLTAGE_NOW: if (fg->battery_missing) pval->intval = 3700000; Loading Loading @@ -3594,6 +3603,9 @@ static int fg_psy_get_property(struct power_supply *psy, case POWER_SUPPLY_PROP_CHARGE_NOW_RAW: rc = fg_gen4_get_charge_raw(chip, &pval->intval); break; case POWER_SUPPLY_PROP_CHARGE_NOW: pval->intval = chip->cl->init_cap_uah; break; case POWER_SUPPLY_PROP_CHARGE_FULL: rc = fg_gen4_get_learned_capacity(chip, &temp); if (!rc) Loading Loading @@ -3775,6 +3787,7 @@ static int fg_property_is_writeable(struct power_supply *psy, static enum power_supply_property fg_psy_props[] = { POWER_SUPPLY_PROP_CAPACITY, POWER_SUPPLY_PROP_CAPACITY_RAW, POWER_SUPPLY_PROP_CC_SOC, POWER_SUPPLY_PROP_TEMP, POWER_SUPPLY_PROP_VOLTAGE_NOW, POWER_SUPPLY_PROP_VOLTAGE_OCV, Loading @@ -3787,6 +3800,7 @@ static enum power_supply_property fg_psy_props[] = { POWER_SUPPLY_PROP_CHARGE_FULL_DESIGN, POWER_SUPPLY_PROP_VOLTAGE_MAX_DESIGN, POWER_SUPPLY_PROP_CHARGE_NOW_RAW, POWER_SUPPLY_PROP_CHARGE_NOW, POWER_SUPPLY_PROP_CHARGE_FULL, POWER_SUPPLY_PROP_CHARGE_COUNTER, POWER_SUPPLY_PROP_CHARGE_COUNTER_SHADOW, Loading