summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@quicinc.com>2018-01-19 09:30:27 -0800
committerGerrit - the friendly Code Review server <code-review@localhost>2018-01-19 09:30:26 -0800
commit188c08e1bf42f86dca5bb4bb96626b54ead40460 (patch)
tree1cca89f290f6c83fa7d5e8660110d41858a4727b
parent6b202df713d7dafef2df0e9ef1c97c6632c60eac (diff)
parentf8c4ccdcc57bee6352d708151812cdec2e74c13a (diff)
Merge "power: smb1351-charger: Disable parallel charging in shutdown path"
-rw-r--r--drivers/power/supply/qcom/smb1351-charger.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/power/supply/qcom/smb1351-charger.c b/drivers/power/supply/qcom/smb1351-charger.c
index ce41ad97bda1..0283396c26e0 100644
--- a/drivers/power/supply/qcom/smb1351-charger.c
+++ b/drivers/power/supply/qcom/smb1351-charger.c
@@ -3264,6 +3264,14 @@ static int smb1351_charger_remove(struct i2c_client *client)
return 0;
}
+static void smb1351_charger_shutdown(struct i2c_client *client)
+{
+ struct smb1351_charger *chip = i2c_get_clientdata(client);
+
+ if (chip->chg_present)
+ smb1351_usb_suspend(chip, USER, true);
+}
+
static int smb1351_suspend(struct device *dev)
{
struct i2c_client *client = to_i2c_client(dev);
@@ -3343,6 +3351,7 @@ static struct i2c_driver smb1351_charger_driver = {
},
.probe = smb1351_charger_probe,
.remove = smb1351_charger_remove,
+ .shutdown = smb1351_charger_shutdown,
.id_table = smb1351_charger_id,
};