Following build regression found while building mips ar7_defconfig
on Linux next-20230307 tag.
Reported-by: Linux Kernel Functional Testing <[email protected]>
Please find the build log and details below.
build log:
--------
arch/mips/ar7/gpio.c:19:33: error: field 'chip' has incomplete type
19 | struct gpio_chip chip;
| ^~~~
arch/mips/ar7/gpio.c: In function 'ar7_gpio_get_value':
arch/mips/ar7/gpio.c:24:38: error: implicit declaration of function
'gpiochip_get_data' [-Werror=implicit-function-declaration]
24 | struct ar7_gpio_chip *gpch = gpiochip_get_data(chip);
| ^~~~~~~~~~~~~~~~~
arch/mips/ar7/gpio.c:24:38: error: initialization of 'struct
ar7_gpio_chip *' from 'int' makes pointer from integer without a cast
[-Werror=int-conversion]
arch/mips/ar7/gpio.c: In function 'titan_gpio_get_value':
arch/mips/ar7/gpio.c:32:38: error: initialization of 'struct
ar7_gpio_chip *' from 'int' makes pointer from integer without a cast
[-Werror=int-conversion]
32 | struct ar7_gpio_chip *gpch = gpiochip_get_data(chip);
| ^~~~~~~~~~~~~~~~~
arch/mips/ar7/gpio.c: In function 'ar7_gpio_set_value':
arch/mips/ar7/gpio.c:42:38: error: initialization of 'struct
ar7_gpio_chip *' from 'int' makes pointer from integer without a cast
[-Werror=int-conversion]
42 | struct ar7_gpio_chip *gpch = gpiochip_get_data(chip);
| ^~~~~~~~~~~~~~~~~
arch/mips/ar7/gpio.c: In function 'titan_gpio_set_value':
arch/mips/ar7/gpio.c:55:38: error: initialization of 'struct
ar7_gpio_chip *' from 'int' makes pointer from integer without a cast
[-Werror=int-conversion]
55 | struct ar7_gpio_chip *gpch = gpiochip_get_data(chip);
| ^~~~~~~~~~~~~~~~~
arch/mips/ar7/gpio.c: In function 'ar7_gpio_direction_input':
arch/mips/ar7/gpio.c:68:38: error: initialization of 'struct
ar7_gpio_chip *' from 'int' makes pointer from integer without a cast
[-Werror=int-conversion]
68 | struct ar7_gpio_chip *gpch = gpiochip_get_data(chip);
| ^~~~~~~~~~~~~~~~~
arch/mips/ar7/gpio.c: In function 'titan_gpio_direction_input':
arch/mips/ar7/gpio.c:78:38: error: initialization of 'struct
ar7_gpio_chip *' from 'int' makes pointer from integer without a cast
[-Werror=int-conversion]
78 | struct ar7_gpio_chip *gpch = gpiochip_get_data(chip);
| ^~~~~~~~~~~~~~~~~
arch/mips/ar7/gpio.c: In function 'ar7_gpio_direction_output':
arch/mips/ar7/gpio.c:93:38: error: initialization of 'struct
ar7_gpio_chip *' from 'int' makes pointer from integer without a cast
[-Werror=int-conversion]
93 | struct ar7_gpio_chip *gpch = gpiochip_get_data(chip);
| ^~~~~~~~~~~~~~~~~
arch/mips/ar7/gpio.c: In function 'titan_gpio_direction_output':
arch/mips/ar7/gpio.c:105:38: error: initialization of 'struct
ar7_gpio_chip *' from 'int' makes pointer from integer without a cast
[-Werror=int-conversion]
105 | struct ar7_gpio_chip *gpch = gpiochip_get_data(chip);
| ^~~~~~~~~~~~~~~~~
arch/mips/ar7/gpio.c: In function 'ar7_gpio_init':
arch/mips/ar7/gpio.c:318:15: error: implicit declaration of function
'gpiochip_add_data' [-Werror=implicit-function-declaration]
318 | ret = gpiochip_add_data(&gpch->chip, gpch);
| ^~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
Build details,
https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20230307/testrun/15301952/suite/build/test/gcc-12-ar7_defconfig/log
https://qa-reports.linaro.org/lkft/linux-next-master/build/next-20230307/testrun/15301952/suite/build/test/gcc-12-ar7_defconfig/history/
metadata:
build_name: gcc-12-ar7_defconfig
config: https://storage.tuxsuite.com/public/linaro/lkft/builds/2MfXLAJXuaMcoIJz6Tg4y1ecnvF/config
download_url:
https://storage.tuxsuite.com/public/linaro/lkft/builds/2MfXLAJXuaMcoIJz6Tg4y1ecnvF/
git_describe: next-20230307
git_repo: https://gitlab.com/Linaro/lkft/mirrors/next/linux-next
git_sha: 709c6adf19dc558e44ab5c01659b09a16a2d3c82
git_short_log: 709c6adf19dc ("Add linux-next specific files for 20230307")
Steps to reproduce:
---------------
# To install tuxmake on your system globally:
# sudo pip3 install -U tuxmake
#
# See https://docs.tuxmake.org/ for complete documentation.
# Original tuxmake command with fragments listed below.
tuxmake --runtime podman --target-arch mips --toolchain gcc-12
--kconfig ar7_defconfig
--
Linaro LKFT
https://lkft.linaro.org
On Tue, Mar 7, 2023, at 18:10, Naresh Kamboju wrote:
> Following build regression found while building mips ar7_defconfig
> on Linux next-20230307 tag.
>
> Reported-by: Linux Kernel Functional Testing <[email protected]>
>
> Please find the build log and details below.
>
> build log:
> --------
> arch/mips/ar7/gpio.c:19:33: error: field 'chip' has incomplete type
> 19 | struct gpio_chip chip;
It sounds like a result of 21d9526d13b5 ("gpiolib: Make the
legacy <linux/gpio.h> consumer-only"). I haven't tried it,
but I think this should fix it, unless there is another bug:
--- a/arch/mips/ar7/gpio.c
+++ b/arch/mips/ar7/gpio.c
@@ -7,7 +7,7 @@
#include <linux/init.h>
#include <linux/export.h>
-#include <linux/gpio.h>
+#include <linux/gpio/driver.h>
#include <asm/mach-ar7/ar7.h>
Arnd
On Tue, Mar 07, 2023 at 07:46:26PM +0100, Arnd Bergmann wrote:
> On Tue, Mar 7, 2023, at 18:10, Naresh Kamboju wrote:
> > Following build regression found while building mips ar7_defconfig
> > on Linux next-20230307 tag.
> >
> > Reported-by: Linux Kernel Functional Testing <[email protected]>
> >
> > Please find the build log and details below.
> >
> > build log:
> > --------
> > arch/mips/ar7/gpio.c:19:33: error: field 'chip' has incomplete type
> > 19 | struct gpio_chip chip;
>
> It sounds like a result of 21d9526d13b5 ("gpiolib: Make the
> legacy <linux/gpio.h> consumer-only"). I haven't tried it,
> but I think this should fix it, unless there is another bug:
>
> --- a/arch/mips/ar7/gpio.c
> +++ b/arch/mips/ar7/gpio.c
> @@ -7,7 +7,7 @@
>
> #include <linux/init.h>
> #include <linux/export.h>
> -#include <linux/gpio.h>
> +#include <linux/gpio/driver.h>
>
> #include <asm/mach-ar7/ar7.h>
Thank you!
Can you send this as a formal patch?
--
With Best Regards,
Andy Shevchenko