summaryrefslogtreecommitdiff
path: root/drivers/power
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2016-09-19 23:27:55 -0700
committerGerrit - the friendly Code Review server <code-review@localhost>2016-09-19 23:27:55 -0700
commita8f7b701069486317258efb2b75cf6a4fb2e43ec (patch)
tree32cf1b567e77c1949c1b9787944f058885c49d46 /drivers/power
parent8935f4d83fa981f64817a835bfa18739fff013a7 (diff)
parent3850d272a614189f0c5a68e89fc7ae825aedc6be (diff)
Merge "qcom-charger: handle get prop errors graciously"
Diffstat (limited to 'drivers/power')
-rw-r--r--drivers/power/qcom-charger/qpnp-smb2.c20
-rw-r--r--drivers/power/qcom-charger/smb138x-charger.c24
2 files changed, 31 insertions, 13 deletions
diff --git a/drivers/power/qcom-charger/qpnp-smb2.c b/drivers/power/qcom-charger/qpnp-smb2.c
index a7dd0bfc66ad..7caa9548308a 100644
--- a/drivers/power/qcom-charger/qpnp-smb2.c
+++ b/drivers/power/qcom-charger/qpnp-smb2.c
@@ -392,7 +392,11 @@ static int smb2_usb_get_prop(struct power_supply *psy,
rc = -EINVAL;
break;
}
- return rc;
+ if (rc < 0) {
+ pr_debug("Couldn't get prop %d rc = %d\n", psp, rc);
+ return -ENODATA;
+ }
+ return 0;
}
static int smb2_usb_set_prop(struct power_supply *psy,
@@ -506,8 +510,11 @@ static int smb2_dc_get_prop(struct power_supply *psy,
default:
return -EINVAL;
}
-
- return rc;
+ if (rc < 0) {
+ pr_debug("Couldn't get prop %d rc = %d\n", psp, rc);
+ return -ENODATA;
+ }
+ return 0;
}
static int smb2_dc_set_prop(struct power_supply *psy,
@@ -633,8 +640,11 @@ static int smb2_batt_get_prop(struct power_supply *psy,
pr_err("batt power supply prop %d not supported\n", psp);
return -EINVAL;
}
-
- return rc;
+ if (rc < 0) {
+ pr_debug("Couldn't get prop %d rc = %d\n", psp, rc);
+ return -ENODATA;
+ }
+ return 0;
}
static int smb2_batt_set_prop(struct power_supply *psy,
diff --git a/drivers/power/qcom-charger/smb138x-charger.c b/drivers/power/qcom-charger/smb138x-charger.c
index a77b0bbc193c..5b4e7bcccdce 100644
--- a/drivers/power/qcom-charger/smb138x-charger.c
+++ b/drivers/power/qcom-charger/smb138x-charger.c
@@ -184,8 +184,11 @@ static int smb138x_usb_get_prop(struct power_supply *psy,
pr_err("get prop %d is not supported\n", prop);
return -EINVAL;
}
-
- return rc;
+ if (rc < 0) {
+ pr_debug("Couldn't get prop %d rc = %d\n", prop, rc);
+ return -ENODATA;
+ }
+ return 0;
}
static int smb138x_usb_set_prop(struct power_supply *psy,
@@ -305,12 +308,14 @@ static int smb138x_batt_get_prop(struct power_supply *psy,
rc = smblib_get_prop_charger_temp_max(chg, val);
break;
default:
- pr_err("batt power supply get prop %d not supported\n",
- prop);
+ pr_err("batt power supply get prop %d not supported\n", prop);
return -EINVAL;
}
-
- return rc;
+ if (rc < 0) {
+ pr_debug("Couldn't get prop %d rc = %d\n", prop, rc);
+ return -ENODATA;
+ }
+ return 0;
}
static int smb138x_batt_set_prop(struct power_supply *psy,
@@ -436,8 +441,11 @@ static int smb138x_parallel_get_prop(struct power_supply *psy,
prop);
return -EINVAL;
}
-
- return rc;
+ if (rc < 0) {
+ pr_debug("Couldn't get prop %d rc = %d\n", prop, rc);
+ return -ENODATA;
+ }
+ return 0;
}
static int smb138x_parallel_set_prop(struct power_supply *psy,