diff options
| author | Linux Build Service Account <lnxbuild@localhost> | 2017-03-10 20:14:36 -0800 |
|---|---|---|
| committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2017-03-10 20:14:36 -0800 |
| commit | 8dd05768779664d4a5be6117d2fcd16db788affb (patch) | |
| tree | 2268b21eb76db9261c0bccfaf01fc4964160ec93 /drivers/power | |
| parent | da248ad284498959e46128cd2ecc70fb50746841 (diff) | |
| parent | 44499b736a83e303044ab96c7105c51553e291b9 (diff) | |
Merge "qcom: qpnp-smb2: update POWER_SUPPLY_PROP_CHARGER_TEMP read logic"
Diffstat (limited to 'drivers/power')
| -rw-r--r-- | drivers/power/supply/qcom/qpnp-smb2.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/power/supply/qcom/qpnp-smb2.c b/drivers/power/supply/qcom/qpnp-smb2.c index bf7aa7a36784..771d1cd32714 100644 --- a/drivers/power/supply/qcom/qpnp-smb2.c +++ b/drivers/power/supply/qcom/qpnp-smb2.c @@ -857,6 +857,7 @@ static int smb2_batt_get_prop(struct power_supply *psy, { struct smb_charger *chg = power_supply_get_drvdata(psy); int rc = 0; + union power_supply_propval pval = {0, }; switch (psp) { case POWER_SUPPLY_PROP_STATUS: @@ -881,7 +882,14 @@ static int smb2_batt_get_prop(struct power_supply *psy, rc = smblib_get_prop_system_temp_level(chg, val); break; case POWER_SUPPLY_PROP_CHARGER_TEMP: - rc = smblib_get_prop_charger_temp(chg, val); + /* do not query RRADC if charger is not present */ + rc = smblib_get_prop_usb_present(chg, &pval); + if (rc < 0) + pr_err("Couldn't get usb present rc=%d\n", rc); + + rc = -ENODATA; + if (pval.intval) + rc = smblib_get_prop_charger_temp(chg, val); break; case POWER_SUPPLY_PROP_CHARGER_TEMP_MAX: rc = smblib_get_prop_charger_temp_max(chg, val); |
