diff mbox series

[-next,v2] pinctrl: samsung: fix build error without CONFIG_OF_GPIO

Message ID 20191212092726.41027-1-chenzhou10@huawei.com
State New
Headers show
Series [-next,v2] pinctrl: samsung: fix build error without CONFIG_OF_GPIO | expand

Commit Message

chenzhou Dec. 12, 2019, 9:27 a.m. UTC
If CONFIG_OF_GPIO is n, build fails:

drivers/pinctrl/samsung/pinctrl-samsung.c: In function samsung_gpiolib_register:
drivers/pinctrl/samsung/pinctrl-samsung.c:969:5: error: struct gpio_chip has no member named of_node
   gc->of_node = bank->of_node;

Use #ifdef to guard this.

Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Chen Zhou <chenzhou10@huawei.com>
---
 drivers/pinctrl/samsung/pinctrl-samsung.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Krzysztof Kozlowski Dec. 12, 2019, 9:38 a.m. UTC | #1
On Thu, 12 Dec 2019 at 10:30, Chen Zhou <chenzhou10@huawei.com> wrote:
>
> If CONFIG_OF_GPIO is n, build fails:
>
> drivers/pinctrl/samsung/pinctrl-samsung.c: In function samsung_gpiolib_register:
> drivers/pinctrl/samsung/pinctrl-samsung.c:969:5: error: struct gpio_chip has no member named of_node
>    gc->of_node = bank->of_node;
>
> Use #ifdef to guard this.
>
> Reported-by: Hulk Robot <hulkci@huawei.com>
> Signed-off-by: Chen Zhou <chenzhou10@huawei.com>
> ---
>  drivers/pinctrl/samsung/pinctrl-samsung.c | 2 ++
>  1 file changed, 2 insertions(+)

I was thinking about adding OF_GPIO but I could not trigger such case
as you mention. How can I reproduce this?

Anyway, the select/dependencies in Kconfig should be fixed up -
PINCTRL_SAMSUNG should depend on OF and GPIOLIB.

Best regards,
Krzysztof
Krzysztof Kozlowski Dec. 12, 2019, 9:44 a.m. UTC | #2
On Thu, 12 Dec 2019 at 10:38, Krzysztof Kozlowski <krzk@kernel.org> wrote:
>
> On Thu, 12 Dec 2019 at 10:30, Chen Zhou <chenzhou10@huawei.com> wrote:
> >
> > If CONFIG_OF_GPIO is n, build fails:
> >
> > drivers/pinctrl/samsung/pinctrl-samsung.c: In function samsung_gpiolib_register:
> > drivers/pinctrl/samsung/pinctrl-samsung.c:969:5: error: struct gpio_chip has no member named of_node
> >    gc->of_node = bank->of_node;
> >
> > Use #ifdef to guard this.
> >
> > Reported-by: Hulk Robot <hulkci@huawei.com>
> > Signed-off-by: Chen Zhou <chenzhou10@huawei.com>
> > ---
> >  drivers/pinctrl/samsung/pinctrl-samsung.c | 2 ++
> >  1 file changed, 2 insertions(+)
>
> I was thinking about adding OF_GPIO but I could not trigger such case
> as you mention. How can I reproduce this?

OK, I reproduced it with x86_64 + COMPILE_TEST + PINCTRL_S3C64XX. I'll
fix it up with proper dependencies on OF and GPIOLIB. The driver
should not have unnecessary ifdefs.

Thanks for the report!

Best regards,
Krzysztof
diff mbox series

Patch

diff --git a/drivers/pinctrl/samsung/pinctrl-samsung.c b/drivers/pinctrl/samsung/pinctrl-samsung.c
index f26574e..5c29ad8 100644
--- a/drivers/pinctrl/samsung/pinctrl-samsung.c
+++ b/drivers/pinctrl/samsung/pinctrl-samsung.c
@@ -966,7 +966,9 @@  static int samsung_gpiolib_register(struct platform_device *pdev,
 		gc->base = bank->grange.base;
 		gc->ngpio = bank->nr_pins;
 		gc->parent = &pdev->dev;
+#ifdef CONFIG_OF_GPIO
 		gc->of_node = bank->of_node;
+#endif
 		gc->label = bank->name;
 
 		ret = devm_gpiochip_add_data(&pdev->dev, gc, bank);