From: Matt Ranostay Date: Sat, 1 Oct 2016 04:45:30 +0000 (-0700) Subject: power: supply: bq27xxx_battery: don't update poll_interval param if same X-Git-Tag: v4.10-rc1~120^2~13 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=950b6c2d110e8df65b9d2704cc7039f3d0d9f7b2;p=karo-tx-linux.git power: supply: bq27xxx_battery: don't update poll_interval param if same To avoid canceling the delayed workqueue needlessly, and scheduling an immediate polling. Check if the new poll_interval value is different than the previous setting. Cc: Tony Lindgren Cc: Sebastian Reichel Signed-off-by: Matt Ranostay Signed-off-by: Sebastian Reichel --- diff --git a/drivers/power/supply/bq27xxx_battery.c b/drivers/power/supply/bq27xxx_battery.c index 3b0dbc689d72..0c343a0c941e 100644 --- a/drivers/power/supply/bq27xxx_battery.c +++ b/drivers/power/supply/bq27xxx_battery.c @@ -397,10 +397,11 @@ static LIST_HEAD(bq27xxx_battery_devices); static int poll_interval_param_set(const char *val, const struct kernel_param *kp) { struct bq27xxx_device_info *di; + unsigned int prev_val = *(unsigned int *) kp->arg; int ret; ret = param_set_uint(val, kp); - if (ret < 0) + if (ret < 0 || prev_val == *(unsigned int *) kp->arg) return ret; mutex_lock(&bq27xxx_list_lock);