From 65df748aa827e0413a2269f5032f4fab6ac16a4b Mon Sep 17 00:00:00 2001 From: Venkat Reddy Talla Date: Mon, 13 Oct 2014 15:25:37 +0530 Subject: [PATCH] power: bq2419x:donot enable charging when OTG cable connected donot enable charging when OTG cable connected to device while device entering into suspend mode. Bug 200044210 Change-Id: Ia9173a1f04fa86cf6da8f0432f4efba8369415d4 Signed-off-by: Venkat Reddy Talla Reviewed-on: http://git-master/r/556242 Reviewed-by: Laxman Dewangan --- drivers/power/bq2419x-charger.c | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/drivers/power/bq2419x-charger.c b/drivers/power/bq2419x-charger.c index f6f03677737..418f02fcb75 100644 --- a/drivers/power/bq2419x-charger.c +++ b/drivers/power/bq2419x-charger.c @@ -518,10 +518,12 @@ static int bq2419x_set_charging_current(struct regulator_dev *rdev, msleep(200); bq2419x->chg_status = BATTERY_DISCHARGING; - ret = bq2419x_charger_enable(bq2419x); - if (ret < 0) { - dev_err(bq2419x->dev, "Charger enable failed %d", ret); - return ret; + if (!bq2419x->is_otg_connected) { + ret = bq2419x_charger_enable(bq2419x); + if (ret < 0) { + dev_err(bq2419x->dev, "Charger enable failed %d", ret); + return ret; + } } ret = regmap_read(bq2419x->regmap, BQ2419X_SYS_STAT_REG, &val); @@ -589,10 +591,12 @@ static int bq2419x_set_charging_current_suspend(struct bq2419x_chip *bq2419x, dev_info(bq2419x->dev, "Setting charging current %d mA\n", in_current_limit); - ret = bq2419x_charger_enable(bq2419x); - if (ret < 0) { - dev_err(bq2419x->dev, "Charger enable failed %d", ret); - return ret; + if (!bq2419x->is_otg_connected) { + ret = bq2419x_charger_enable(bq2419x); + if (ret < 0) { + dev_err(bq2419x->dev, "Charger enable failed %d", ret); + return ret; + } } ret = regmap_read(bq2419x->regmap, BQ2419X_SYS_STAT_REG, &val); -- 2.39.2