diff options
| author | AnilKumar Ch <anilkumar@ti.com> | 2012-09-01 16:16:30 +0800 | 
|---|---|---|
| committer | Bryan Wu <bryan.wu@canonical.com> | 2012-09-11 18:32:43 +0800 | 
| commit | 8fe4554f675c5822a0e12382e6843965ffd11c30 (patch) | |
| tree | 3807dd77e465c89c39fa09050d1f4e08320b845c /drivers/leds/leds-gpio.c | |
| parent | b98d13c725920e9ab7696e0d7d19c4db1bdf6737 (diff) | |
| download | olio-linux-3.10-8fe4554f675c5822a0e12382e6843965ffd11c30.tar.xz olio-linux-3.10-8fe4554f675c5822a0e12382e6843965ffd11c30.zip  | |
leds: leds-gpio: adopt pinctrl support
Adopt pinctrl support to leds-gpio driver based on leds-gpio
device pointer, pinctrl driver configure SoC pins to GPIO
mode according to definitions provided in .dts file.
Signed-off-by: AnilKumar Ch <anilkumar@ti.com>
Acked-by: Marek Vasut <marex@denx.de>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Bryan Wu <bryan.wu@canonical.com>
Diffstat (limited to 'drivers/leds/leds-gpio.c')
| -rw-r--r-- | drivers/leds/leds-gpio.c | 7 | 
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/leds/leds-gpio.c b/drivers/leds/leds-gpio.c index cde85ba1903..087d1e66f4f 100644 --- a/drivers/leds/leds-gpio.c +++ b/drivers/leds/leds-gpio.c @@ -20,6 +20,7 @@  #include <linux/slab.h>  #include <linux/workqueue.h>  #include <linux/module.h> +#include <linux/pinctrl/consumer.h>  struct gpio_led_data {  	struct led_classdev cdev; @@ -234,8 +235,14 @@ static int __devinit gpio_led_probe(struct platform_device *pdev)  {  	struct gpio_led_platform_data *pdata = pdev->dev.platform_data;  	struct gpio_leds_priv *priv; +	struct pinctrl *pinctrl;  	int i, ret = 0; +	pinctrl = devm_pinctrl_get_select_default(&pdev->dev); +	if (IS_ERR(pinctrl)) +		dev_warn(&pdev->dev, +			"pins are not configured from the driver\n"); +  	if (pdata && pdata->num_leds) {  		priv = devm_kzalloc(&pdev->dev,  				sizeof_gpio_leds_priv(pdata->num_leds),  |