diff options
author | Hans de Goede <hdegoede@redhat.com> | 2016-12-21 15:36:53 +0100 |
---|---|---|
committer | Sebastian Reichel <sre@kernel.org> | 2017-01-04 22:03:00 +0100 |
commit | bcd39ba7327e806190761aeefa953099e68ebe24 (patch) | |
tree | f548cf06f1bd8966210a7f919ff404a66438a495 /drivers/power | |
parent | 71851a63af60cb98cb877e52776b2700e868683b (diff) | |
download | linux-exynos-bcd39ba7327e806190761aeefa953099e68ebe24.tar.gz linux-exynos-bcd39ba7327e806190761aeefa953099e68ebe24.tar.bz2 linux-exynos-bcd39ba7327e806190761aeefa953099e68ebe24.zip |
power: supply: axp288_charger: Some minor cleanups
Remove info->health, info->present and info->online caching, as no code
is reading the cached values.
Remove if (changed) check before calling power_supply_changed(), we
return early from axp288_charger_extcon_evt_worker if nothing has
changed, so the check is not needed.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
Diffstat (limited to 'drivers/power')
-rw-r--r-- | drivers/power/supply/axp288_charger.c | 23 |
1 files changed, 5 insertions, 18 deletions
diff --git a/drivers/power/supply/axp288_charger.c b/drivers/power/supply/axp288_charger.c index 03395d2d22c0..4dd1a5fff23c 100644 --- a/drivers/power/supply/axp288_charger.c +++ b/drivers/power/supply/axp288_charger.c @@ -167,14 +167,11 @@ struct axp288_chrg_info { struct work_struct work; } cable; - int health; int inlmt; int cc; int cv; int max_cc; int max_cv; - bool online; - bool present; bool is_charger_enabled; }; @@ -432,8 +429,7 @@ static int axp288_charger_usb_get_property(struct power_supply *psy, ret = axp288_charger_is_present(info); if (ret < 0) goto psy_get_prop_fail; - info->present = ret; - val->intval = info->present; + val->intval = ret; break; case POWER_SUPPLY_PROP_ONLINE: /* Check for OTG case first */ @@ -444,8 +440,7 @@ static int axp288_charger_usb_get_property(struct power_supply *psy, ret = axp288_charger_is_online(info); if (ret < 0) goto psy_get_prop_fail; - info->online = ret; - val->intval = info->online; + val->intval = ret; break; case POWER_SUPPLY_PROP_HEALTH: val->intval = axp288_get_charger_health(info); @@ -578,7 +573,6 @@ static void axp288_charger_extcon_evt_worker(struct work_struct *work) struct axp288_chrg_info *info = container_of(work, struct axp288_chrg_info, cable.work); int ret, current_limit; - bool changed = false; struct extcon_dev *edev = info->cable.edev; bool old_connected = info->cable.connected; enum power_supply_type old_chg_type = info->cable.chg_type; @@ -604,11 +598,8 @@ static void axp288_charger_extcon_evt_worker(struct work_struct *work) } /* Cable status changed */ - if (old_connected != info->cable.connected || - old_chg_type != info->cable.chg_type) - changed = true; - - if (!changed) + if (old_connected == info->cable.connected && + old_chg_type == info->cable.chg_type) return; mutex_lock(&info->lock); @@ -643,13 +634,9 @@ static void axp288_charger_extcon_evt_worker(struct work_struct *work) axp288_charger_enable_charger(info, false); } - if (changed) - info->health = axp288_get_charger_health(info); - mutex_unlock(&info->lock); - if (changed) - power_supply_changed(info->psy_usb); + power_supply_changed(info->psy_usb); } static int axp288_charger_handle_cable_evt(struct notifier_block *nb, |