From: Venkat Reddy Talla Date: Mon, 13 Oct 2014 09:55:37 +0000 (+0530) Subject: power: bq2419x:donot enable charging when OTG cable connected X-Git-Tag: daily-2014.11.28.0_rel-st8-l-r1-partner-shieldtablet8~26 X-Git-Url: https://rtime.felk.cvut.cz/gitweb/sojka/nv-tegra/linux-3.10.git/commitdiff_plain/65df748aa827e0413a2269f5032f4fab6ac16a4b 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 --- 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);