From 71afe3cb1e8fdf89556047e03bcbcd731f1ab108 Mon Sep 17 00:00:00 2001 From: Jan Kiszka Date: Fri, 26 May 2017 15:17:46 +0200 Subject: leds: trigger: gpio: Refresh LED state after GPIO change The new GPIO may have a different state than the old one. Signed-off-by: Jan Kiszka Reviewed-by: Andy Shevchenko Signed-off-by: Jacek Anaszewski --- drivers/leds/trigger/ledtrig-gpio.c | 2 ++ 1 file changed, 2 insertions(+) (limited to 'drivers/leds') diff --git a/drivers/leds/trigger/ledtrig-gpio.c b/drivers/leds/trigger/ledtrig-gpio.c index 51288a45fbcb9..93d6b82e64372 100644 --- a/drivers/leds/trigger/ledtrig-gpio.c +++ b/drivers/leds/trigger/ledtrig-gpio.c @@ -170,6 +170,8 @@ static ssize_t gpio_trig_gpio_store(struct device *dev, if (gpio_data->gpio != 0) free_irq(gpio_to_irq(gpio_data->gpio), led); gpio_data->gpio = gpio; + /* After changing the GPIO, we need to update the LED. */ + schedule_work(&gpio_data->work); } return ret ? ret : n; -- cgit v1.2.3