diff options
author | Heiko Schocher <hs@denx.de> | 2015-10-13 01:17:12 -0400 |
---|---|---|
committer | Jacek Anaszewski <j.anaszewski@samsung.com> | 2015-11-03 02:59:48 -0500 |
commit | 707f33ed85ff423016674d27bb2e60fe8fa352ce (patch) | |
tree | a5e4bb2b7791af80978c058b70ada6b555efbf0d /drivers/leds/leds-gpio.c | |
parent | 1d3ff22d633d35048c35c3deeead7ab116cebc32 (diff) |
leds: leds-gpio: add shutdown function
add a shutdown function for setting the gpio-leds
into off state when shuting down.
Signed-off-by: Heiko Schocher <hs@denx.de>
Signed-off-by: Jacek Anaszewski <j.anaszewski@samsung.com>
Diffstat (limited to 'drivers/leds/leds-gpio.c')
-rw-r--r-- | drivers/leds/leds-gpio.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/drivers/leds/leds-gpio.c b/drivers/leds/leds-gpio.c index af1876a3a77c..5db4515a4fd7 100644 --- a/drivers/leds/leds-gpio.c +++ b/drivers/leds/leds-gpio.c | |||
@@ -291,9 +291,22 @@ static int gpio_led_remove(struct platform_device *pdev) | |||
291 | return 0; | 291 | return 0; |
292 | } | 292 | } |
293 | 293 | ||
294 | static void gpio_led_shutdown(struct platform_device *pdev) | ||
295 | { | ||
296 | struct gpio_leds_priv *priv = platform_get_drvdata(pdev); | ||
297 | int i; | ||
298 | |||
299 | for (i = 0; i < priv->num_leds; i++) { | ||
300 | struct gpio_led_data *led = &priv->leds[i]; | ||
301 | |||
302 | gpio_led_set(&led->cdev, LED_OFF); | ||
303 | } | ||
304 | } | ||
305 | |||
294 | static struct platform_driver gpio_led_driver = { | 306 | static struct platform_driver gpio_led_driver = { |
295 | .probe = gpio_led_probe, | 307 | .probe = gpio_led_probe, |
296 | .remove = gpio_led_remove, | 308 | .remove = gpio_led_remove, |
309 | .shutdown = gpio_led_shutdown, | ||
297 | .driver = { | 310 | .driver = { |
298 | .name = "leds-gpio", | 311 | .name = "leds-gpio", |
299 | .of_match_table = of_gpio_leds_match, | 312 | .of_match_table = of_gpio_leds_match, |