diff options
author | Paul Kocialkowski <contact@paulk.fr> | 2017-04-25 17:09:04 +0200 |
---|---|---|
committer | Sebastian Reichel <sre@kernel.org> | 2017-05-01 12:43:20 +0200 |
commit | 4df2cce4722d35eb35bb9371e7c9a600a84558f9 (patch) | |
tree | 7c120731edbac1c50b2c4242d06dcfe7431f3705 /drivers/power | |
parent | 633e8799ddc09431be2744c4a1efdbda13af2b0b (diff) | |
download | blackbird-op-linux-4df2cce4722d35eb35bb9371e7c9a600a84558f9.tar.gz blackbird-op-linux-4df2cce4722d35eb35bb9371e7c9a600a84558f9.zip |
power: supply: sbs-battery: Don't ignore the first external power change
A mechanism to ignore the first external power change notification was
put in place years ago to ignore the power_supply_register notification.
However, this doesn't apply to the current situation anymore, as the
first notification is always the result of a legitimate power change.
This removes this deprecated mechanism, which puts back the driver's
state machine to a sane state (an ignored first notification previously
caused a charging/discharging status inversion).
Signed-off-by: Paul Kocialkowski <contact@paulk.fr>
Signed-off-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
Diffstat (limited to 'drivers/power')
-rw-r--r-- | drivers/power/supply/sbs-battery.c | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/drivers/power/supply/sbs-battery.c b/drivers/power/supply/sbs-battery.c index e07d570f504f..7fd0f308189f 100644 --- a/drivers/power/supply/sbs-battery.c +++ b/drivers/power/supply/sbs-battery.c @@ -171,7 +171,6 @@ struct sbs_info { u32 i2c_retry_count; u32 poll_retry_count; struct delayed_work work; - int ignore_changes; }; static char model_name[I2C_SMBUS_BLOCK_MAX + 1]; @@ -694,11 +693,6 @@ static void sbs_external_power_changed(struct power_supply *psy) { struct sbs_info *chip = power_supply_get_drvdata(psy); - if (chip->ignore_changes > 0) { - chip->ignore_changes--; - return; - } - /* cancel outstanding work */ cancel_delayed_work_sync(&chip->work); @@ -775,10 +769,6 @@ static int sbs_probe(struct i2c_client *client, chip->enable_detection = false; psy_cfg.of_node = client->dev.of_node; psy_cfg.drv_data = chip; - /* ignore first notification of external change, it is generated - * from the power_supply_register call back - */ - chip->ignore_changes = 1; chip->last_state = POWER_SUPPLY_STATUS_UNKNOWN; /* use pdata if available, fall back to DT properties, |