2023-03-09 13:53:36

by Geert Uytterhoeven

[permalink] [raw]
Subject: [PATCH] sh: mach-x3proto: Add missing #include <linux/gpio/driver.h>

shx3_defconfig:

arch/sh/boards/mach-x3proto/setup.c: In function ‘x3proto_devices_setup’:
arch/sh/boards/mach-x3proto/setup.c:246:62: error: invalid use of undefined type ‘struct gpio_chip’
246 | baseboard_buttons[i].gpio = x3proto_gpio_chip.base + i;
| ^

Reported-by: Linux Kernel Functional Testing <[email protected]>
Link: https://lore.kernel.org/r/CA+G9fYs7suzGsEDK40G0pzxXyR1o2V4Pn-oy1owTsTWRVEVHog@mail.gmail.com
Fixes: 21d9526d13b5467b ("gpiolib: Make the legacy <linux/gpio.h> consumer-only")
Signed-off-by: Geert Uytterhoeven <[email protected]>
---
arch/sh/boards/mach-x3proto/setup.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/sh/boards/mach-x3proto/setup.c b/arch/sh/boards/mach-x3proto/setup.c
index 95b85f2e13dda75b..7f39fca95e57a109 100644
--- a/arch/sh/boards/mach-x3proto/setup.c
+++ b/arch/sh/boards/mach-x3proto/setup.c
@@ -17,6 +17,7 @@
#include <linux/usb/r8a66597.h>
#include <linux/usb/m66592.h>
#include <linux/gpio.h>
+#include <linux/gpio/driver.h>
#include <linux/gpio_keys.h>
#include <mach/ilsel.h>
#include <mach/hardware.h>
--
2.34.1



Subject: Re: [PATCH] sh: mach-x3proto: Add missing #include <linux/gpio/driver.h>

Hi Geert!

On Thu, 2023-03-09 at 14:52 +0100, Geert Uytterhoeven wrote:
> shx3_defconfig:
>
> arch/sh/boards/mach-x3proto/setup.c: In function ‘x3proto_devices_setup’:
> arch/sh/boards/mach-x3proto/setup.c:246:62: error: invalid use of undefined type ‘struct gpio_chip’
> 246 | baseboard_buttons[i].gpio = x3proto_gpio_chip.base + i;
> | ^
>
> Reported-by: Linux Kernel Functional Testing <[email protected]>
> Link: https://lore.kernel.org/r/CA+G9fYs7suzGsEDK40G0pzxXyR1o2V4Pn-oy1owTsTWRVEVHog@mail.gmail.com
> Fixes: 21d9526d13b5467b ("gpiolib: Make the legacy <linux/gpio.h> consumer-only")
> Signed-off-by: Geert Uytterhoeven <[email protected]>
> ---
> arch/sh/boards/mach-x3proto/setup.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/sh/boards/mach-x3proto/setup.c b/arch/sh/boards/mach-x3proto/setup.c
> index 95b85f2e13dda75b..7f39fca95e57a109 100644
> --- a/arch/sh/boards/mach-x3proto/setup.c
> +++ b/arch/sh/boards/mach-x3proto/setup.c
> @@ -17,6 +17,7 @@
> #include <linux/usb/r8a66597.h>
> #include <linux/usb/m66592.h>
> #include <linux/gpio.h>
> +#include <linux/gpio/driver.h>
> #include <linux/gpio_keys.h>
> #include <mach/ilsel.h>
> #include <mach/hardware.h>

Thanks. You were much faster than me. I didn't even have the time to have a look
at the problem yet ;-). Is it sufficient to pick this up for 6.4?

Adrian

--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913

2023-03-09 14:00:11

by Geert Uytterhoeven

[permalink] [raw]
Subject: Re: [PATCH] sh: mach-x3proto: Add missing #include <linux/gpio/driver.h>

Hi Adrian,

> On Thu, 2023-03-09 at 14:52 +0100, Geert Uytterhoeven wrote:
> > shx3_defconfig:
> >
> > arch/sh/boards/mach-x3proto/setup.c: In function ‘x3proto_devices_setup’:
> > arch/sh/boards/mach-x3proto/setup.c:246:62: error: invalid use of undefined type ‘struct gpio_chip’
> > 246 | baseboard_buttons[i].gpio = x3proto_gpio_chip.base + i;
> > | ^
> >
> > Reported-by: Linux Kernel Functional Testing <[email protected]>
> > Link: https://lore.kernel.org/r/CA+G9fYs7suzGsEDK40G0pzxXyR1o2V4Pn-oy1owTsTWRVEVHog@mail.gmail.com
> > Fixes: 21d9526d13b5467b ("gpiolib: Make the legacy <linux/gpio.h> consumer-only")
> > Signed-off-by: Geert Uytterhoeven <[email protected]>

> > --- a/arch/sh/boards/mach-x3proto/setup.c
> > +++ b/arch/sh/boards/mach-x3proto/setup.c
> > @@ -17,6 +17,7 @@
> > #include <linux/usb/r8a66597.h>
> > #include <linux/usb/m66592.h>
> > #include <linux/gpio.h>
> > +#include <linux/gpio/driver.h>
> > #include <linux/gpio_keys.h>
> > #include <mach/ilsel.h>
> > #include <mach/hardware.h>
>
> Thanks. You were much faster than me. I didn't even have the time to have a look
> at the problem yet ;-). Is it sufficient to pick this up for 6.4?

As the problem is introduced in and only found in gpio/for-next,
I expect Linus or Andy to pick it up.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

Subject: Re: [PATCH] sh: mach-x3proto: Add missing #include <linux/gpio/driver.h>

On Thu, 2023-03-09 at 14:56 +0100, Geert Uytterhoeven wrote:
> Hi Adrian,
>
> > On Thu, 2023-03-09 at 14:52 +0100, Geert Uytterhoeven wrote:
> > > shx3_defconfig:
> > >
> > > arch/sh/boards/mach-x3proto/setup.c: In function ‘x3proto_devices_setup’:
> > > arch/sh/boards/mach-x3proto/setup.c:246:62: error: invalid use of undefined type ‘struct gpio_chip’
> > > 246 | baseboard_buttons[i].gpio = x3proto_gpio_chip.base + i;
> > > | ^
> > >
> > > Reported-by: Linux Kernel Functional Testing <[email protected]>
> > > Link: https://lore.kernel.org/r/CA+G9fYs7suzGsEDK40G0pzxXyR1o2V4Pn-oy1owTsTWRVEVHog@mail.gmail.com
> > > Fixes: 21d9526d13b5467b ("gpiolib: Make the legacy <linux/gpio.h> consumer-only")
> > > Signed-off-by: Geert Uytterhoeven <[email protected]>
>
> > > --- a/arch/sh/boards/mach-x3proto/setup.c
> > > +++ b/arch/sh/boards/mach-x3proto/setup.c
> > > @@ -17,6 +17,7 @@
> > > #include <linux/usb/r8a66597.h>
> > > #include <linux/usb/m66592.h>
> > > #include <linux/gpio.h>
> > > +#include <linux/gpio/driver.h>
> > > #include <linux/gpio_keys.h>
> > > #include <mach/ilsel.h>
> > > #include <mach/hardware.h>
> >
> > Thanks. You were much faster than me. I didn't even have the time to have a look
> > at the problem yet ;-). Is it sufficient to pick this up for 6.4?
>
> As the problem is introduced in and only found in gpio/for-next,
> I expect Linus or Andy to pick it up.

OK, thanks! I'm planning to prepare my for-next changes this weekend.

Adrian

--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913

2023-03-09 14:10:50

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH] sh: mach-x3proto: Add missing #include <linux/gpio/driver.h>

On Thu, Mar 9, 2023 at 2:52 PM Geert Uytterhoeven
<[email protected]> wrote:

> shx3_defconfig:
>
> arch/sh/boards/mach-x3proto/setup.c: In function ‘x3proto_devices_setup’:
> arch/sh/boards/mach-x3proto/setup.c:246:62: error: invalid use of undefined type ‘struct gpio_chip’
> 246 | baseboard_buttons[i].gpio = x3proto_gpio_chip.base + i;
> | ^
>
> Reported-by: Linux Kernel Functional Testing <[email protected]>
> Link: https://lore.kernel.org/r/CA+G9fYs7suzGsEDK40G0pzxXyR1o2V4Pn-oy1owTsTWRVEVHog@mail.gmail.com
> Fixes: 21d9526d13b5467b ("gpiolib: Make the legacy <linux/gpio.h> consumer-only")
> Signed-off-by: Geert Uytterhoeven <[email protected]>

This is fallout from cleanups in Bartosz GPIO tree, so it will be applied there.
Make sure Bartosz gets the patch (now on To:)

Reviewed-by: Linus Walleij <[email protected]>

Yours,
Linus Walleij

2023-03-09 14:12:30

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH] sh: mach-x3proto: Add missing #include <linux/gpio/driver.h>

On Thu, Mar 09, 2023 at 02:52:55PM +0100, Geert Uytterhoeven wrote:
> shx3_defconfig:
>
> arch/sh/boards/mach-x3proto/setup.c: In function ‘x3proto_devices_setup’:
> arch/sh/boards/mach-x3proto/setup.c:246:62: error: invalid use of undefined type ‘struct gpio_chip’
> 246 | baseboard_buttons[i].gpio = x3proto_gpio_chip.base + i;
> | ^
>
> Reported-by: Linux Kernel Functional Testing <[email protected]>
> Link: https://lore.kernel.org/r/CA+G9fYs7suzGsEDK40G0pzxXyR1o2V4Pn-oy1owTsTWRVEVHog@mail.gmail.com
> Fixes: 21d9526d13b5467b ("gpiolib: Make the legacy <linux/gpio.h> consumer-only")
> Signed-off-by: Geert Uytterhoeven <[email protected]>

Thank you!

...

> #include <linux/gpio.h>
> +#include <linux/gpio/driver.h>

Do we still need the legacy header?

--
With Best Regards,
Andy Shevchenko



2023-03-09 14:36:28

by Geert Uytterhoeven

[permalink] [raw]
Subject: Re: [PATCH] sh: mach-x3proto: Add missing #include <linux/gpio/driver.h>

Hi Andy,

On Thu, Mar 9, 2023 at 3:10 PM Andy Shevchenko
<[email protected]> wrote:
> On Thu, Mar 09, 2023 at 02:52:55PM +0100, Geert Uytterhoeven wrote:
> > shx3_defconfig:
> >
> > arch/sh/boards/mach-x3proto/setup.c: In function ‘x3proto_devices_setup’:
> > arch/sh/boards/mach-x3proto/setup.c:246:62: error: invalid use of undefined type ‘struct gpio_chip’
> > 246 | baseboard_buttons[i].gpio = x3proto_gpio_chip.base + i;
> > | ^
> >
> > Reported-by: Linux Kernel Functional Testing <[email protected]>
> > Link: https://lore.kernel.org/r/CA+G9fYs7suzGsEDK40G0pzxXyR1o2V4Pn-oy1owTsTWRVEVHog@mail.gmail.com
> > Fixes: 21d9526d13b5467b ("gpiolib: Make the legacy <linux/gpio.h> consumer-only")
> > Signed-off-by: Geert Uytterhoeven <[email protected]>
>
> Thank you!
>
> ...
>
> > #include <linux/gpio.h>
> > +#include <linux/gpio/driver.h>
>
> Do we still need the legacy header?

Apparently not. And "make arch/sh/boards/mach-x3proto/setup.i"
confirms it's not included indirectly.

Will send a v2...

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- [email protected]

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds

2023-03-09 15:07:14

by Andy Shevchenko

[permalink] [raw]
Subject: Re: [PATCH] sh: mach-x3proto: Add missing #include <linux/gpio/driver.h>

On Thu, Mar 09, 2023 at 03:08:47PM +0100, Linus Walleij wrote:
> On Thu, Mar 9, 2023 at 2:52 PM Geert Uytterhoeven
> <[email protected]> wrote:
>
> > shx3_defconfig:
> >
> > arch/sh/boards/mach-x3proto/setup.c: In function ‘x3proto_devices_setup’:
> > arch/sh/boards/mach-x3proto/setup.c:246:62: error: invalid use of undefined type ‘struct gpio_chip’
> > 246 | baseboard_buttons[i].gpio = x3proto_gpio_chip.base + i;
> > | ^
> >
> > Reported-by: Linux Kernel Functional Testing <[email protected]>
> > Link: https://lore.kernel.org/r/CA+G9fYs7suzGsEDK40G0pzxXyR1o2V4Pn-oy1owTsTWRVEVHog@mail.gmail.com
> > Fixes: 21d9526d13b5467b ("gpiolib: Make the legacy <linux/gpio.h> consumer-only")
> > Signed-off-by: Geert Uytterhoeven <[email protected]>
>
> This is fallout from cleanups in Bartosz GPIO tree, so it will be applied there.
> Make sure Bartosz gets the patch (now on To:)
>
> Reviewed-by: Linus Walleij <[email protected]>

Thanks, as for previous patch on the same topic, I am collecting this one.

I will sent a new PR to Bart including all fixes, but I would wait one or a
couple of weeks before doing that. Meanwhile these will be in Linux Next.

--
With Best Regards,
Andy Shevchenko