Message ID | 1558338735-8444-1-git-send-email-amelie.delaunay@st.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | pinctrl: stmfx: Fix compile issue when CONFIG_OF_GPIO is not defined | expand |
On 5/20/19 12:52 AM, Amelie Delaunay wrote: > When CONFIG_GPIO_OF is not defined, struct gpio_chip 'of_node' member does > not exist: > drivers/pinctrl/pinctrl-stmfx.c: In function 'stmfx_pinctrl_probe': > drivers/pinctrl/pinctrl-stmfx.c:652:17: error: 'struct gpio_chip' has no member named 'of_node' > pctl->gpio_chip.of_node = np; > > Fixes: 1490d9f841b1 ("pinctrl: Add STMFX GPIO expander Pinctrl/GPIO driver") > Reported-by: kbuild test robot <lkp@intel.com> > Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com> This is good as far as it goes, but I am also seeing a build error in pinctrl-stmfx.c when CONFIG_OF is not set/enabled (randconfig): ../drivers/pinctrl/pinctrl-stmfx.c:409:20: error: ‘pinconf_generic_dt_node_to_map_pin’ undeclared here (not in a function) .dt_node_to_map = pinconf_generic_dt_node_to_map_pin, ^ > --- > drivers/pinctrl/pinctrl-stmfx.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/pinctrl/pinctrl-stmfx.c b/drivers/pinctrl/pinctrl-stmfx.c > index eba872c..bb64aa0 100644 > --- a/drivers/pinctrl/pinctrl-stmfx.c > +++ b/drivers/pinctrl/pinctrl-stmfx.c > @@ -648,7 +648,9 @@ static int stmfx_pinctrl_probe(struct platform_device *pdev) > pctl->gpio_chip.base = -1; > pctl->gpio_chip.ngpio = pctl->pctl_desc.npins; > pctl->gpio_chip.can_sleep = true; > +#ifdef CONFIG_OF_GPIO > pctl->gpio_chip.of_node = np; > +#endif > pctl->gpio_chip.need_valid_mask = true; > > ret = devm_gpiochip_add_data(pctl->dev, &pctl->gpio_chip, pctl); >
On Mon, 20 May 2019, Amelie Delaunay wrote: > When CONFIG_GPIO_OF is not defined, struct gpio_chip 'of_node' member does > not exist: > drivers/pinctrl/pinctrl-stmfx.c: In function 'stmfx_pinctrl_probe': > drivers/pinctrl/pinctrl-stmfx.c:652:17: error: 'struct gpio_chip' has no member named 'of_node' > pctl->gpio_chip.of_node = np; > > Fixes: 1490d9f841b1 ("pinctrl: Add STMFX GPIO expander Pinctrl/GPIO driver") > Reported-by: kbuild test robot <lkp@intel.com> > Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com> > --- > drivers/pinctrl/pinctrl-stmfx.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/pinctrl/pinctrl-stmfx.c b/drivers/pinctrl/pinctrl-stmfx.c > index eba872c..bb64aa0 100644 > --- a/drivers/pinctrl/pinctrl-stmfx.c > +++ b/drivers/pinctrl/pinctrl-stmfx.c > @@ -648,7 +648,9 @@ static int stmfx_pinctrl_probe(struct platform_device *pdev) > pctl->gpio_chip.base = -1; > pctl->gpio_chip.ngpio = pctl->pctl_desc.npins; > pctl->gpio_chip.can_sleep = true; > +#ifdef CONFIG_OF_GPIO > pctl->gpio_chip.of_node = np; > +#endif This is pretty ugly. Will STMFX ever be used without OF support? If not, it might be better to place this restriction on the driver as a whole. Incidentally, why is this blanked out in the structure definition? Even 'struct device' doesn't do this. > pctl->gpio_chip.need_valid_mask = true; > > ret = devm_gpiochip_add_data(pctl->dev, &pctl->gpio_chip, pctl);
On 5/22/19 7:48 AM, Lee Jones wrote: > On Mon, 20 May 2019, Amelie Delaunay wrote: > >> When CONFIG_GPIO_OF is not defined, struct gpio_chip 'of_node' member does >> not exist: >> drivers/pinctrl/pinctrl-stmfx.c: In function 'stmfx_pinctrl_probe': >> drivers/pinctrl/pinctrl-stmfx.c:652:17: error: 'struct gpio_chip' has no member named 'of_node' >> pctl->gpio_chip.of_node = np; >> >> Fixes: 1490d9f841b1 ("pinctrl: Add STMFX GPIO expander Pinctrl/GPIO driver") >> Reported-by: kbuild test robot <lkp@intel.com> >> Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com> >> --- >> drivers/pinctrl/pinctrl-stmfx.c | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/drivers/pinctrl/pinctrl-stmfx.c b/drivers/pinctrl/pinctrl-stmfx.c >> index eba872c..bb64aa0 100644 >> --- a/drivers/pinctrl/pinctrl-stmfx.c >> +++ b/drivers/pinctrl/pinctrl-stmfx.c >> @@ -648,7 +648,9 @@ static int stmfx_pinctrl_probe(struct platform_device *pdev) >> pctl->gpio_chip.base = -1; >> pctl->gpio_chip.ngpio = pctl->pctl_desc.npins; >> pctl->gpio_chip.can_sleep = true; >> +#ifdef CONFIG_OF_GPIO >> pctl->gpio_chip.of_node = np; >> +#endif > > This is pretty ugly. Will STMFX ever be used without OF support? If > not, it might be better to place this restriction on the driver as a > whole. > > Incidentally, why is this blanked out in the structure definition? > Even 'struct device' doesn't do this. > config PINCTRL_STMFX tristate "STMicroelectronics STMFX GPIO expander pinctrl driver" depends on I2C depends on OF || COMPILE_TEST select GENERIC_PINCONF select GPIOLIB_IRQCHIP select MFD_STMFX The issue is due to COMPILE_TEST: would "depends on OF || (OF && COMPILE_TEST)" be better ? >> pctl->gpio_chip.need_valid_mask = true; >> >> ret = devm_gpiochip_add_data(pctl->dev, &pctl->gpio_chip, pctl); >
On Wed, 22 May 2019, Amelie DELAUNAY wrote: > On 5/22/19 7:48 AM, Lee Jones wrote: > > On Mon, 20 May 2019, Amelie Delaunay wrote: > > > >> When CONFIG_GPIO_OF is not defined, struct gpio_chip 'of_node' member does > >> not exist: > >> drivers/pinctrl/pinctrl-stmfx.c: In function 'stmfx_pinctrl_probe': > >> drivers/pinctrl/pinctrl-stmfx.c:652:17: error: 'struct gpio_chip' has no member named 'of_node' > >> pctl->gpio_chip.of_node = np; > >> > >> Fixes: 1490d9f841b1 ("pinctrl: Add STMFX GPIO expander Pinctrl/GPIO driver") > >> Reported-by: kbuild test robot <lkp@intel.com> > >> Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com> > >> --- > >> drivers/pinctrl/pinctrl-stmfx.c | 2 ++ > >> 1 file changed, 2 insertions(+) > >> > >> diff --git a/drivers/pinctrl/pinctrl-stmfx.c b/drivers/pinctrl/pinctrl-stmfx.c > >> index eba872c..bb64aa0 100644 > >> --- a/drivers/pinctrl/pinctrl-stmfx.c > >> +++ b/drivers/pinctrl/pinctrl-stmfx.c > >> @@ -648,7 +648,9 @@ static int stmfx_pinctrl_probe(struct platform_device *pdev) > >> pctl->gpio_chip.base = -1; > >> pctl->gpio_chip.ngpio = pctl->pctl_desc.npins; > >> pctl->gpio_chip.can_sleep = true; > >> +#ifdef CONFIG_OF_GPIO > >> pctl->gpio_chip.of_node = np; > >> +#endif > > > > This is pretty ugly. Will STMFX ever be used without OF support? If > > not, it might be better to place this restriction on the driver as a > > whole. > > > > Incidentally, why is this blanked out in the structure definition? > > Even 'struct device' doesn't do this. > > > config PINCTRL_STMFX > tristate "STMicroelectronics STMFX GPIO expander pinctrl driver" > depends on I2C > depends on OF || COMPILE_TEST > select GENERIC_PINCONF > select GPIOLIB_IRQCHIP > select MFD_STMFX > > The issue is due to COMPILE_TEST: would "depends on OF || (OF && > COMPILE_TEST)" be better ? Linus would be in a better position to respond, but from what I can see, maybe: depends on OF || (OF_GPIO && COMPILE_TEST) Although, I'm unsure why other COMPILE_TESTs haven't highlighted this issue. Perhaps because they have all been locked down to a particular arch: $ grep COMPILE_TEST -- drivers/pinctrl/Kconfig bool "Support pin multiplexing controllers" if COMPILE_TEST bool "Support pin configuration controllers" if COMPILE_TEST depends on OF && (ARCH_DAVINCI_DA850 || COMPILE_TEST) depends on OF && (ARCH_DIGICOLOR || COMPILE_TEST) depends on OF && (ARCH_LPC18XX || COMPILE_TEST) depends on ARCH_R7S72100 || COMPILE_TEST depends on ARCH_R7S9210 || COMPILE_TEST depends on ARCH_RZN1 || COMPILE_TEST depends on MIPS || COMPILE_TEST What about adding this to your Kconfig entry: select OF_GPIO > >> pctl->gpio_chip.need_valid_mask = true; > >> > >> ret = devm_gpiochip_add_data(pctl->dev, &pctl->gpio_chip, pctl); > >
On 5/22/19 10:41 AM, Lee Jones wrote: > On Wed, 22 May 2019, Amelie DELAUNAY wrote: >> On 5/22/19 7:48 AM, Lee Jones wrote: >>> On Mon, 20 May 2019, Amelie Delaunay wrote: >>> >>>> When CONFIG_GPIO_OF is not defined, struct gpio_chip 'of_node' member does >>>> not exist: >>>> drivers/pinctrl/pinctrl-stmfx.c: In function 'stmfx_pinctrl_probe': >>>> drivers/pinctrl/pinctrl-stmfx.c:652:17: error: 'struct gpio_chip' has no member named 'of_node' >>>> pctl->gpio_chip.of_node = np; >>>> >>>> Fixes: 1490d9f841b1 ("pinctrl: Add STMFX GPIO expander Pinctrl/GPIO driver") >>>> Reported-by: kbuild test robot <lkp@intel.com> >>>> Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com> >>>> --- >>>> drivers/pinctrl/pinctrl-stmfx.c | 2 ++ >>>> 1 file changed, 2 insertions(+) >>>> >>>> diff --git a/drivers/pinctrl/pinctrl-stmfx.c b/drivers/pinctrl/pinctrl-stmfx.c >>>> index eba872c..bb64aa0 100644 >>>> --- a/drivers/pinctrl/pinctrl-stmfx.c >>>> +++ b/drivers/pinctrl/pinctrl-stmfx.c >>>> @@ -648,7 +648,9 @@ static int stmfx_pinctrl_probe(struct platform_device *pdev) >>>> pctl->gpio_chip.base = -1; >>>> pctl->gpio_chip.ngpio = pctl->pctl_desc.npins; >>>> pctl->gpio_chip.can_sleep = true; >>>> +#ifdef CONFIG_OF_GPIO >>>> pctl->gpio_chip.of_node = np; >>>> +#endif >>> >>> This is pretty ugly. Will STMFX ever be used without OF support? If >>> not, it might be better to place this restriction on the driver as a >>> whole. >>> >>> Incidentally, why is this blanked out in the structure definition? >>> Even 'struct device' doesn't do this. >>> >> config PINCTRL_STMFX >> tristate "STMicroelectronics STMFX GPIO expander pinctrl driver" >> depends on I2C >> depends on OF || COMPILE_TEST >> select GENERIC_PINCONF >> select GPIOLIB_IRQCHIP >> select MFD_STMFX >> >> The issue is due to COMPILE_TEST: would "depends on OF || (OF && >> COMPILE_TEST)" be better ? > > Linus would be in a better position to respond, but from what I can > see, maybe: > > depends on OF || (OF_GPIO && COMPILE_TEST) > > Although, I'm unsure why other COMPILE_TESTs haven't highlighted this > issue. Perhaps because they have all been locked down to a particular > arch: > > $ grep COMPILE_TEST -- drivers/pinctrl/Kconfig > bool "Support pin multiplexing controllers" if COMPILE_TEST > bool "Support pin configuration controllers" if COMPILE_TEST > depends on OF && (ARCH_DAVINCI_DA850 || COMPILE_TEST) > depends on OF && (ARCH_DIGICOLOR || COMPILE_TEST) > depends on OF && (ARCH_LPC18XX || COMPILE_TEST) > depends on ARCH_R7S72100 || COMPILE_TEST > depends on ARCH_R7S9210 || COMPILE_TEST > depends on ARCH_RZN1 || COMPILE_TEST > depends on MIPS || COMPILE_TEST > > What about adding this to your Kconfig entry: > > select OF_GPIO > Yes COMPILE_TEST is combined with arch when depending on OF. But STMFX isn't arch dependent, it is just OF and I2C dependent. Randy also see a build error in pinctrl-stmfx.c when CONFIG_OF is not set/enabled (randconfig): ../drivers/pinctrl/pinctrl-stmfx.c:409:20: error: ‘pinconf_generic_dt_node_to_map_pin’ undeclared here (not in a function) .dt_node_to_map = pinconf_generic_dt_node_to_map_pin, OF_GPIO depends on OF. So either depends on OF || (OF && COMPILE_TEST) or depends on OF || (OF_GPIO && COMPILE_TEST) and select OF_GPIO What is the prettiest way ? >>>> pctl->gpio_chip.need_valid_mask = true; >>>> >>>> ret = devm_gpiochip_add_data(pctl->dev, &pctl->gpio_chip, pctl); >>> >
On Wed, 22 May 2019, Amelie DELAUNAY wrote: > On 5/22/19 10:41 AM, Lee Jones wrote: > > On Wed, 22 May 2019, Amelie DELAUNAY wrote: > >> On 5/22/19 7:48 AM, Lee Jones wrote: > >>> On Mon, 20 May 2019, Amelie Delaunay wrote: > >>> > >>>> When CONFIG_GPIO_OF is not defined, struct gpio_chip 'of_node' member does > >>>> not exist: > >>>> drivers/pinctrl/pinctrl-stmfx.c: In function 'stmfx_pinctrl_probe': > >>>> drivers/pinctrl/pinctrl-stmfx.c:652:17: error: 'struct gpio_chip' has no member named 'of_node' > >>>> pctl->gpio_chip.of_node = np; > >>>> > >>>> Fixes: 1490d9f841b1 ("pinctrl: Add STMFX GPIO expander Pinctrl/GPIO driver") > >>>> Reported-by: kbuild test robot <lkp@intel.com> > >>>> Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com> > >>>> --- > >>>> drivers/pinctrl/pinctrl-stmfx.c | 2 ++ > >>>> 1 file changed, 2 insertions(+) > >>>> > >>>> diff --git a/drivers/pinctrl/pinctrl-stmfx.c b/drivers/pinctrl/pinctrl-stmfx.c > >>>> index eba872c..bb64aa0 100644 > >>>> --- a/drivers/pinctrl/pinctrl-stmfx.c > >>>> +++ b/drivers/pinctrl/pinctrl-stmfx.c > >>>> @@ -648,7 +648,9 @@ static int stmfx_pinctrl_probe(struct platform_device *pdev) > >>>> pctl->gpio_chip.base = -1; > >>>> pctl->gpio_chip.ngpio = pctl->pctl_desc.npins; > >>>> pctl->gpio_chip.can_sleep = true; > >>>> +#ifdef CONFIG_OF_GPIO > >>>> pctl->gpio_chip.of_node = np; > >>>> +#endif > >>> > >>> This is pretty ugly. Will STMFX ever be used without OF support? If > >>> not, it might be better to place this restriction on the driver as a > >>> whole. > >>> > >>> Incidentally, why is this blanked out in the structure definition? > >>> Even 'struct device' doesn't do this. > >>> > >> config PINCTRL_STMFX > >> tristate "STMicroelectronics STMFX GPIO expander pinctrl driver" > >> depends on I2C > >> depends on OF || COMPILE_TEST > >> select GENERIC_PINCONF > >> select GPIOLIB_IRQCHIP > >> select MFD_STMFX > >> > >> The issue is due to COMPILE_TEST: would "depends on OF || (OF && > >> COMPILE_TEST)" be better ? > > > > Linus would be in a better position to respond, but from what I can > > see, maybe: > > > > depends on OF || (OF_GPIO && COMPILE_TEST) > > > > Although, I'm unsure why other COMPILE_TESTs haven't highlighted this > > issue. Perhaps because they have all been locked down to a particular > > arch: > > > > $ grep COMPILE_TEST -- drivers/pinctrl/Kconfig > > bool "Support pin multiplexing controllers" if COMPILE_TEST > > bool "Support pin configuration controllers" if COMPILE_TEST > > depends on OF && (ARCH_DAVINCI_DA850 || COMPILE_TEST) > > depends on OF && (ARCH_DIGICOLOR || COMPILE_TEST) > > depends on OF && (ARCH_LPC18XX || COMPILE_TEST) > > depends on ARCH_R7S72100 || COMPILE_TEST > > depends on ARCH_R7S9210 || COMPILE_TEST > > depends on ARCH_RZN1 || COMPILE_TEST > > depends on MIPS || COMPILE_TEST > > > > What about adding this to your Kconfig entry: > > > > select OF_GPIO > > > > Yes COMPILE_TEST is combined with arch when depending on OF. But STMFX > isn't arch dependent, it is just OF and I2C dependent. > > Randy also see a build error in pinctrl-stmfx.c when CONFIG_OF is not > set/enabled (randconfig): > > ../drivers/pinctrl/pinctrl-stmfx.c:409:20: error: > ‘pinconf_generic_dt_node_to_map_pin’ undeclared here (not in a function) > .dt_node_to_map = pinconf_generic_dt_node_to_map_pin, > > OF_GPIO depends on OF. > > So either > depends on OF || (OF && COMPILE_TEST) > or > depends on OF || (OF_GPIO && COMPILE_TEST) > > and > > select OF_GPIO > > What is the prettiest way ? I'll leave the final call up to Linus.
On Wed, May 22, 2019 at 11:21 AM Amelie DELAUNAY <amelie.delaunay@st.com> wrote: > ../drivers/pinctrl/pinctrl-stmfx.c:409:20: error: > ‘pinconf_generic_dt_node_to_map_pin’ undeclared here (not in a function) > .dt_node_to_map = pinconf_generic_dt_node_to_map_pin, > > OF_GPIO depends on OF. > > So either > depends on OF || (OF && COMPILE_TEST) > or > depends on OF || (OF_GPIO && COMPILE_TEST) > > and > > select OF_GPIO I would use just: depends on OF_GPIO Because OF_GPIO already depends on OF, and compile tests will not work without OF_GPIO which require OF so... Besides it is what most other GPIO drivers do. So just keep that one line and drop the rest. Yours, Linus Walleij
On 5/22/19 11:48 PM, Linus Walleij wrote: > On Wed, May 22, 2019 at 11:21 AM Amelie DELAUNAY <amelie.delaunay@st.com> wrote: > >> ../drivers/pinctrl/pinctrl-stmfx.c:409:20: error: >> ‘pinconf_generic_dt_node_to_map_pin’ undeclared here (not in a function) >> .dt_node_to_map = pinconf_generic_dt_node_to_map_pin, >> >> OF_GPIO depends on OF. >> >> So either >> depends on OF || (OF && COMPILE_TEST) >> or >> depends on OF || (OF_GPIO && COMPILE_TEST) >> >> and >> >> select OF_GPIO > > I would use just: > > depends on OF_GPIO > > Because OF_GPIO already depends on OF, and > compile tests will not work without OF_GPIO which > require OF so... > > Besides it is what most other GPIO drivers do. > > So just keep that one line and drop the rest. > > Yours, > Linus Walleij > Ok so I can get rid of COMPILE_TEST ? depends on I2C depends on OF_GPIO select GENERIC_PINCONF select GPIOLIB_IRQCHIP select MFD_STMFX Because I've no arch to balance COMPILE_TEST. Or maybe something like depends on OF_GPIO && (OF || COMPILE_TEST) even if OF_GPIO && OF is redundant ? Regards, Amelie
On Thu, May 23, 2019 at 4:11 PM Amelie DELAUNAY <amelie.delaunay@st.com> wrote: > On 5/22/19 11:48 PM, Linus Walleij wrote: > > On Wed, May 22, 2019 at 11:21 AM Amelie DELAUNAY <amelie.delaunay@st.com> wrote: > > > >> ../drivers/pinctrl/pinctrl-stmfx.c:409:20: error: > >> ‘pinconf_generic_dt_node_to_map_pin’ undeclared here (not in a function) > >> .dt_node_to_map = pinconf_generic_dt_node_to_map_pin, > >> > >> OF_GPIO depends on OF. > >> > >> So either > >> depends on OF || (OF && COMPILE_TEST) > >> or > >> depends on OF || (OF_GPIO && COMPILE_TEST) > >> > >> and > >> > >> select OF_GPIO > > > > I would use just: > > > > depends on OF_GPIO > > > > Because OF_GPIO already depends on OF, and > > compile tests will not work without OF_GPIO which > > require OF so... > > > > Besides it is what most other GPIO drivers do. > > > > So just keep that one line and drop the rest. > > > > Yours, > > Linus Walleij > > > > Ok so I can get rid of COMPILE_TEST ? > depends on I2C > depends on OF_GPIO > select GENERIC_PINCONF > select GPIOLIB_IRQCHIP > select MFD_STMFX Yep just like that. > Because I've no arch to balance COMPILE_TEST. Or maybe something like > depends on OF_GPIO && (OF || COMPILE_TEST) > even if OF_GPIO && OF is redundant ? COMPILE_TEST is just to make something available for testing on other architectures, such as testing ARM-specific drivers on x86. With just OF_GPIO as dependency, it will be compile tested anyways because x86 allyesconfig will enable OF and OF_GPIO, and also all the STMFX drivers. Yours, Linus Walleij
On 5/23/19 9:18 PM, Linus Walleij wrote: > On Thu, May 23, 2019 at 4:11 PM Amelie DELAUNAY <amelie.delaunay@st.com> wrote: >> On 5/22/19 11:48 PM, Linus Walleij wrote: >>> On Wed, May 22, 2019 at 11:21 AM Amelie DELAUNAY <amelie.delaunay@st.com> wrote: >>> >>>> ../drivers/pinctrl/pinctrl-stmfx.c:409:20: error: >>>> ‘pinconf_generic_dt_node_to_map_pin’ undeclared here (not in a function) >>>> .dt_node_to_map = pinconf_generic_dt_node_to_map_pin, >>>> >>>> OF_GPIO depends on OF. >>>> >>>> So either >>>> depends on OF || (OF && COMPILE_TEST) >>>> or >>>> depends on OF || (OF_GPIO && COMPILE_TEST) >>>> >>>> and >>>> >>>> select OF_GPIO >>> >>> I would use just: >>> >>> depends on OF_GPIO >>> >>> Because OF_GPIO already depends on OF, and >>> compile tests will not work without OF_GPIO which >>> require OF so... >>> >>> Besides it is what most other GPIO drivers do. >>> >>> So just keep that one line and drop the rest. >>> >>> Yours, >>> Linus Walleij >>> >> >> Ok so I can get rid of COMPILE_TEST ? >> depends on I2C >> depends on OF_GPIO >> select GENERIC_PINCONF >> select GPIOLIB_IRQCHIP >> select MFD_STMFX > > Yep just like that. > >> Because I've no arch to balance COMPILE_TEST. Or maybe something like >> depends on OF_GPIO && (OF || COMPILE_TEST) >> even if OF_GPIO && OF is redundant ? > > COMPILE_TEST is just to make something available for testing > on other architectures, such as testing ARM-specific drivers > on x86. > > With just OF_GPIO as dependency, it will be compile tested anyways > because x86 allyesconfig will enable OF and OF_GPIO, and also > all the STMFX drivers. > > Yours, > Linus Walleij > Thanks Linus for this clarification! Regards, Amelie
diff --git a/drivers/pinctrl/pinctrl-stmfx.c b/drivers/pinctrl/pinctrl-stmfx.c index eba872c..bb64aa0 100644 --- a/drivers/pinctrl/pinctrl-stmfx.c +++ b/drivers/pinctrl/pinctrl-stmfx.c @@ -648,7 +648,9 @@ static int stmfx_pinctrl_probe(struct platform_device *pdev) pctl->gpio_chip.base = -1; pctl->gpio_chip.ngpio = pctl->pctl_desc.npins; pctl->gpio_chip.can_sleep = true; +#ifdef CONFIG_OF_GPIO pctl->gpio_chip.of_node = np; +#endif pctl->gpio_chip.need_valid_mask = true; ret = devm_gpiochip_add_data(pctl->dev, &pctl->gpio_chip, pctl);
When CONFIG_GPIO_OF is not defined, struct gpio_chip 'of_node' member does not exist: drivers/pinctrl/pinctrl-stmfx.c: In function 'stmfx_pinctrl_probe': drivers/pinctrl/pinctrl-stmfx.c:652:17: error: 'struct gpio_chip' has no member named 'of_node' pctl->gpio_chip.of_node = np; Fixes: 1490d9f841b1 ("pinctrl: Add STMFX GPIO expander Pinctrl/GPIO driver") Reported-by: kbuild test robot <lkp@intel.com> Signed-off-by: Amelie Delaunay <amelie.delaunay@st.com> --- drivers/pinctrl/pinctrl-stmfx.c | 2 ++ 1 file changed, 2 insertions(+)