2012-11-05 15:45:08

by Axel Lin

[permalink] [raw]
Subject: [PATCH v2] pinctrl: samsung: Add ifdef CONFIG_OF_GPIO guard for gc->of_node

This fixes below build error when !CONFIG_OF_GPIO.

CC drivers/pinctrl/pinctrl-samsung.o
drivers/pinctrl/pinctrl-samsung.c: In function 'samsung_pinctrl_parse_dt_pins':
drivers/pinctrl/pinctrl-samsung.c:557:19: warning: unused variable 'prop' [-Wunused-variable]
drivers/pinctrl/pinctrl-samsung.c: In function 'samsung_gpiolib_register':
drivers/pinctrl/pinctrl-samsung.c:797:5: error: 'struct gpio_chip' has no member named 'of_node'
make[2]: *** [drivers/pinctrl/pinctrl-samsung.o] Error 1
make[1]: *** [drivers/pinctrl] Error 2
make: *** [drivers] Error 2

Signed-off-by: Axel Lin <[email protected]>
---
v2:
Don't remove the prop variable.
It is used in of_property_for_each_string() when CONFIG_OF_GPIO is enabled.

drivers/pinctrl/pinctrl-samsung.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/drivers/pinctrl/pinctrl-samsung.c b/drivers/pinctrl/pinctrl-samsung.c
index fc34cac..f798b4d 100644
--- a/drivers/pinctrl/pinctrl-samsung.c
+++ b/drivers/pinctrl/pinctrl-samsung.c
@@ -794,7 +794,9 @@ static int __devinit samsung_gpiolib_register(struct platform_device *pdev,
gc->base = ctrl->base + bank->pin_base;
gc->ngpio = bank->nr_pins;
gc->dev = &pdev->dev;
+#if defined(CONFIG_OF_GPIO)
gc->of_node = bank->of_node;
+#endif
gc->label = bank->name;

ret = gpiochip_add(gc);
--
1.7.9.5



2012-11-06 05:03:25

by Thomas Abraham

[permalink] [raw]
Subject: Re: [PATCH v2] pinctrl: samsung: Add ifdef CONFIG_OF_GPIO guard for gc->of_node

On 5 November 2012 21:14, Axel Lin <[email protected]> wrote:
> This fixes below build error when !CONFIG_OF_GPIO.
>
> CC drivers/pinctrl/pinctrl-samsung.o
> drivers/pinctrl/pinctrl-samsung.c: In function 'samsung_pinctrl_parse_dt_pins':
> drivers/pinctrl/pinctrl-samsung.c:557:19: warning: unused variable 'prop' [-Wunused-variable]
> drivers/pinctrl/pinctrl-samsung.c: In function 'samsung_gpiolib_register':
> drivers/pinctrl/pinctrl-samsung.c:797:5: error: 'struct gpio_chip' has no member named 'of_node'
> make[2]: *** [drivers/pinctrl/pinctrl-samsung.o] Error 1
> make[1]: *** [drivers/pinctrl] Error 2
> make: *** [drivers] Error 2
>
> Signed-off-by: Axel Lin <[email protected]>
> ---
> v2:
> Don't remove the prop variable.
> It is used in of_property_for_each_string() when CONFIG_OF_GPIO is enabled.
>
> drivers/pinctrl/pinctrl-samsung.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/pinctrl/pinctrl-samsung.c b/drivers/pinctrl/pinctrl-samsung.c
> index fc34cac..f798b4d 100644
> --- a/drivers/pinctrl/pinctrl-samsung.c
> +++ b/drivers/pinctrl/pinctrl-samsung.c
> @@ -794,7 +794,9 @@ static int __devinit samsung_gpiolib_register(struct platform_device *pdev,
> gc->base = ctrl->base + bank->pin_base;
> gc->ngpio = bank->nr_pins;
> gc->dev = &pdev->dev;
> +#if defined(CONFIG_OF_GPIO)
> gc->of_node = bank->of_node;
> +#endif
> gc->label = bank->name;
>
> ret = gpiochip_add(gc);

The samsung pinctrl driver supports only device tree enabled
platforms. So instead of adding the above #if, would it not be better
to add 'select OF_GPIO' for Samsung pinctrl driver in
drivers/pinctrl/Kconfig. ?

Thanks,
Thomas.

> --
> 1.7.9.5
>
>
>

2012-11-06 08:57:42

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH v2] pinctrl: samsung: Add ifdef CONFIG_OF_GPIO guard for gc->of_node

On Tue, Nov 6, 2012 at 6:03 AM, Thomas Abraham
<[email protected]> wrote:
> On 5 November 2012 21:14, Axel Lin <[email protected]> wrote:

>> +#if defined(CONFIG_OF_GPIO)
>> gc->of_node = bank->of_node;
>> +#endif
>
> The samsung pinctrl driver supports only device tree enabled
> platforms. So instead of adding the above #if, would it not be better
> to add 'select OF_GPIO' for Samsung pinctrl driver in
> drivers/pinctrl/Kconfig. ?

Or edit the Samsung driver to depend on OF_GPIO, this is probably
better.

Yours,
Linus Walleij