power: supply: bq24735: always check for AC adapter presence in probe
authorPeter Rosin <peda@axentia.se>
Tue, 20 Dec 2016 11:33:02 +0000 (12:33 +0100)
committerSebastian Reichel <sre@kernel.org>
Wed, 4 Jan 2017 21:00:52 +0000 (22:00 +0100)
So what if there is a status_gpio specified? bq24735_charger_is_present()
do have a working fallback for the case of no status_gpio.

Simplify this by not special casing setups w/o status_gpio, folding
two consecutive if-blocks in the process.

Signed-off-by: Peter Rosin <peda@axentia.se>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
drivers/power/supply/bq24735-charger.c

index 71f977d..4f6275e 100644 (file)
@@ -416,7 +416,7 @@ static int bq24735_charger_probe(struct i2c_client *client,
                return ret;
        }
 
-       if (!charger->status_gpio || bq24735_charger_is_present(charger)) {
+       if (bq24735_charger_is_present(charger)) {
                ret = bq24735_read_word(client, BQ24735_MANUFACTURER_ID);
                if (ret < 0) {
                        dev_err(&client->dev, "Failed to read manufacturer id : %d\n",
@@ -437,10 +437,7 @@ static int bq24735_charger_probe(struct i2c_client *client,
                                "device id mismatch. 0x000b != 0x%04x\n", ret);
                        return -ENODEV;
                }
-       }
 
-       /* check for AC adapter presence */
-       if (bq24735_charger_is_present(charger)) {
                ret = bq24735_enable_charging(charger);
                if (ret < 0) {
                        dev_err(&client->dev, "Failed to enable charging\n");