[PATCH 4/5] leds: leds-gpio: adopt pinctrl support
Tony Lindgren
tony at atomide.com
Sat Sep 1 02:04:04 EST 2012
* AnilKumar Ch <anilkumar at ti.com> [120831 02:30]:
> Adopt pinctrl support to leds-gpio driver, based on the device
> pointer (leds-gpio) pinctrl driver configure SoC pins to GPIO
> mode.
>
> Signed-off-by: AnilKumar Ch <anilkumar at ti.com>
> ---
> drivers/leds/leds-gpio.c | 31 ++++++++++++++++++++++++-------
> 1 file changed, 24 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/leds/leds-gpio.c b/drivers/leds/leds-gpio.c
> index c032b21..d98dfb9 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;
> @@ -236,14 +237,23 @@ 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;
> - int i, ret = 0;
> + struct pinctrl *pinctrl;
> + int i = 0;
> + int ret = 0;
> +
> + pinctrl = devm_pinctrl_get_select_default(&pdev->dev);
> + if (IS_ERR(pinctrl)) {
> + return PTR_ERR(pinctrl);
> + }
I think you need to just print out a warning here as most systems don't
have the pinctrl implemented. And some people just do static pinmuxing
in the bootloader.
Regards,
Tony
More information about the devicetree-discuss
mailing list