[v2,1/1] : iio: light: rpr0521: add missing Kconfig dependencies

Message ID 20221110214729.ls5ixav5kxpeftk7@device
State New
Headers
Series [v2,1/1] : iio: light: rpr0521: add missing Kconfig dependencies |

Commit Message

Paul Gazzillo Nov. 10, 2022, 9:47 p.m. UTC
  Fix an implicit declaration of function error for rpr0521 under some configs

When CONFIG_RPR0521 is enabled without CONFIG_IIO_TRIGGERED_BUFFER,
the build results in "implicit declaration of function" errors, e.g.,
  drivers/iio/light/rpr0521.c:434:3: error: implicit declaration of function
           'iio_trigger_poll_chained' [-Werror=implicit-function-declaration]
    434 |   iio_trigger_poll_chained(data->drdy_trigger0);
        |   ^~~~~~~~~~~~~~~~~~~~~~~~

This fix adds select dependencies to RPR0521's configuration declaration.

Signed-off-by: Paul Gazzillo <paul@pgazz.com>
Link: https://bugzilla.kernel.org/show_bug.cgi?id=216678
---
V1 -> V2: Cleaned up commit message per reviewer comments and added link
          to bug report.

 drivers/iio/light/Kconfig | 2 ++
 1 file changed, 2 insertions(+)
  

Comments

Andy Shevchenko Nov. 11, 2022, 11:25 a.m. UTC | #1
On Thu, Nov 10, 2022 at 04:47:29PM -0500, Paul Gazzillo wrote:
> Fix an implicit declaration of function error for rpr0521 under some configs
> 
> When CONFIG_RPR0521 is enabled without CONFIG_IIO_TRIGGERED_BUFFER,
> the build results in "implicit declaration of function" errors, e.g.,
>   drivers/iio/light/rpr0521.c:434:3: error: implicit declaration of function
>            'iio_trigger_poll_chained' [-Werror=implicit-function-declaration]
>     434 |   iio_trigger_poll_chained(data->drdy_trigger0);
>         |   ^~~~~~~~~~~~~~~~~~~~~~~~
> 
> This fix adds select dependencies to RPR0521's configuration declaration.
> 
> Signed-off-by: Paul Gazzillo <paul@pgazz.com>
> Link: https://bugzilla.kernel.org/show_bug.cgi?id=216678

No need to create a bugzilla report on such tiny issues that do actually not
affect the working configurations.

FWIW,
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>

> ---
> V1 -> V2: Cleaned up commit message per reviewer comments and added link
>           to bug report.
> 
>  drivers/iio/light/Kconfig | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/iio/light/Kconfig b/drivers/iio/light/Kconfig
> index 7cf6e8490123..0d4447df7200 100644
> --- a/drivers/iio/light/Kconfig
> +++ b/drivers/iio/light/Kconfig
> @@ -293,6 +293,8 @@ config RPR0521
>  	tristate "ROHM RPR0521 ALS and proximity sensor driver"
>  	depends on I2C
>  	select REGMAP_I2C
> +	select IIO_BUFFER
> +	select IIO_TRIGGERED_BUFFER
>  	help
>  	  Say Y here if you want to build support for ROHM's RPR0521
>  	  ambient light and proximity sensor device.
> -- 
> 2.25.1
  
Paul Gazzillo Nov. 11, 2022, 3:25 p.m. UTC | #2
On 11/11/2022, Andy Shevchenko wrote:
> On Thu, Nov 10, 2022 at 04:47:29PM -0500, Paul Gazzillo wrote:
> > Fix an implicit declaration of function error for rpr0521 under some configs
> > 
> > When CONFIG_RPR0521 is enabled without CONFIG_IIO_TRIGGERED_BUFFER,
> > the build results in "implicit declaration of function" errors, e.g.,
> >   drivers/iio/light/rpr0521.c:434:3: error: implicit declaration of function
> >            'iio_trigger_poll_chained' [-Werror=implicit-function-declaration]
> >     434 |   iio_trigger_poll_chained(data->drdy_trigger0);
> >         |   ^~~~~~~~~~~~~~~~~~~~~~~~
> > 
> > This fix adds select dependencies to RPR0521's configuration declaration.
> > 
> > Signed-off-by: Paul Gazzillo <paul@pgazz.com>
> > Link: https://bugzilla.kernel.org/show_bug.cgi?id=216678
> 
> No need to create a bugzilla report on such tiny issues that do actually not
> affect the working configurations.

Understood.  Thanks for your help!

> 
> FWIW,
> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> 
> > ---
> > V1 -> V2: Cleaned up commit message per reviewer comments and added link
> >           to bug report.
> > 
> >  drivers/iio/light/Kconfig | 2 ++
> >  1 file changed, 2 insertions(+)
> > 
> > diff --git a/drivers/iio/light/Kconfig b/drivers/iio/light/Kconfig
> > index 7cf6e8490123..0d4447df7200 100644
> > --- a/drivers/iio/light/Kconfig
> > +++ b/drivers/iio/light/Kconfig
> > @@ -293,6 +293,8 @@ config RPR0521
> >  	tristate "ROHM RPR0521 ALS and proximity sensor driver"
> >  	depends on I2C
> >  	select REGMAP_I2C
> > +	select IIO_BUFFER
> > +	select IIO_TRIGGERED_BUFFER
> >  	help
> >  	  Say Y here if you want to build support for ROHM's RPR0521
> >  	  ambient light and proximity sensor device.
> > -- 
> > 2.25.1
> 
> -- 
> With Best Regards,
> Andy Shevchenko

Best,
Paul
  
Jonathan Cameron Nov. 12, 2022, 5:37 p.m. UTC | #3
On Fri, 11 Nov 2022 10:25:39 -0500
Paul Gazzillo <paul@pgazz.com> wrote:

> On 11/11/2022, Andy Shevchenko wrote:
> > On Thu, Nov 10, 2022 at 04:47:29PM -0500, Paul Gazzillo wrote:  
> > > Fix an implicit declaration of function error for rpr0521 under some configs
> > > 
> > > When CONFIG_RPR0521 is enabled without CONFIG_IIO_TRIGGERED_BUFFER,
> > > the build results in "implicit declaration of function" errors, e.g.,
> > >   drivers/iio/light/rpr0521.c:434:3: error: implicit declaration of function
> > >            'iio_trigger_poll_chained' [-Werror=implicit-function-declaration]
> > >     434 |   iio_trigger_poll_chained(data->drdy_trigger0);
> > >         |   ^~~~~~~~~~~~~~~~~~~~~~~~
> > > 
> > > This fix adds select dependencies to RPR0521's configuration declaration.
> > > 
> > > Signed-off-by: Paul Gazzillo <paul@pgazz.com>
> > > Link: https://bugzilla.kernel.org/show_bug.cgi?id=216678  
> > 
> > No need to create a bugzilla report on such tiny issues that do actually not
> > affect the working configurations.  
> 
> Understood.  Thanks for your help!

I wonder why it has taken so long for this build issue to get reported?

Ah well. This is missing a fixes tag. I added
Fixes: e12ffd241c00 ("iio: light: rpr0521 triggered buffer")

Applied to the fixes-togreg branch of iio.git.

Thanks,

Jonathan



> 
> > 
> > FWIW,
> > Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> >   
> > > ---
> > > V1 -> V2: Cleaned up commit message per reviewer comments and added link
> > >           to bug report.
> > > 
> > >  drivers/iio/light/Kconfig | 2 ++
> > >  1 file changed, 2 insertions(+)
> > > 
> > > diff --git a/drivers/iio/light/Kconfig b/drivers/iio/light/Kconfig
> > > index 7cf6e8490123..0d4447df7200 100644
> > > --- a/drivers/iio/light/Kconfig
> > > +++ b/drivers/iio/light/Kconfig
> > > @@ -293,6 +293,8 @@ config RPR0521
> > >  	tristate "ROHM RPR0521 ALS and proximity sensor driver"
> > >  	depends on I2C
> > >  	select REGMAP_I2C
> > > +	select IIO_BUFFER
> > > +	select IIO_TRIGGERED_BUFFER
> > >  	help
> > >  	  Say Y here if you want to build support for ROHM's RPR0521
> > >  	  ambient light and proximity sensor device.
> > > -- 
> > > 2.25.1  
> > 
> > -- 
> > With Best Regards,
> > Andy Shevchenko  
> 
> Best,
> Paul
  
Paul Gazzillo Nov. 14, 2022, 4:22 p.m. UTC | #4
On 11/12/2022, Jonathan Cameron wrote:
> On Fri, 11 Nov 2022 10:25:39 -0500
> Paul Gazzillo <paul@pgazz.com> wrote:
> 
> > On 11/11/2022, Andy Shevchenko wrote:
> > > On Thu, Nov 10, 2022 at 04:47:29PM -0500, Paul Gazzillo wrote:  
> > > > Fix an implicit declaration of function error for rpr0521 under some configs
> > > > 
> > > > When CONFIG_RPR0521 is enabled without CONFIG_IIO_TRIGGERED_BUFFER,
> > > > the build results in "implicit declaration of function" errors, e.g.,
> > > >   drivers/iio/light/rpr0521.c:434:3: error: implicit declaration of function
> > > >            'iio_trigger_poll_chained' [-Werror=implicit-function-declaration]
> > > >     434 |   iio_trigger_poll_chained(data->drdy_trigger0);
> > > >         |   ^~~~~~~~~~~~~~~~~~~~~~~~
> > > > 
> > > > This fix adds select dependencies to RPR0521's configuration declaration.
> > > > 
> > > > Signed-off-by: Paul Gazzillo <paul@pgazz.com>
> > > > Link: https://bugzilla.kernel.org/show_bug.cgi?id=216678  
> > > 
> > > No need to create a bugzilla report on such tiny issues that do actually not
> > > affect the working configurations.  
> > 
> > Understood.  Thanks for your help!
> 
> I wonder why it has taken so long for this build issue to get reported?
>

There seem to be lots of combinations of configuration options that
don't get tested or even built (understandably, given the enormous
number of options), leaving Kconfig with an incomplete picture of
dependencies.  There's just too many to test, though if users are only
using some predefined .config files (or testers are using only
allyesconfig) they may not encounter these corner cases that slip
through Kconfig (and maybe these cases aren't really very high
impact).  Our team's been researching how to better test across
configurations; one of our tools for finding unmet Kconfig dependency
bugs (kismet) is now being run by Intel's kernel test robot, but we're
also working on how to improve run-time testing as well, and I ran
across a configuration that triggered this build error.  In case
you're interested, here's our current tooling:
    https://github.com/paulgazz/kmax
Let me know if you have any related painpoints that this work might
help with.  I work in academia with funding that encourages
open-sourcing the results, so it's great to have real-world problems
that can provide a tangible benefit.

> Ah well. This is missing a fixes tag. I added
> Fixes: e12ffd241c00 ("iio: light: rpr0521 triggered buffer")

Thank you!

> 
> Applied to the fixes-togreg branch of iio.git.
>
> Thanks,
> 
> Jonathan
> 
> 
> 
> > 
> > > 
> > > FWIW,
> > > Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> > >   
> > > > ---
> > > > V1 -> V2: Cleaned up commit message per reviewer comments and added link
> > > >           to bug report.
> > > > 
> > > >  drivers/iio/light/Kconfig | 2 ++
> > > >  1 file changed, 2 insertions(+)
> > > > 
> > > > diff --git a/drivers/iio/light/Kconfig b/drivers/iio/light/Kconfig
> > > > index 7cf6e8490123..0d4447df7200 100644
> > > > --- a/drivers/iio/light/Kconfig
> > > > +++ b/drivers/iio/light/Kconfig
> > > > @@ -293,6 +293,8 @@ config RPR0521
> > > >  	tristate "ROHM RPR0521 ALS and proximity sensor driver"
> > > >  	depends on I2C
> > > >  	select REGMAP_I2C
> > > > +	select IIO_BUFFER
> > > > +	select IIO_TRIGGERED_BUFFER
> > > >  	help
> > > >  	  Say Y here if you want to build support for ROHM's RPR0521
> > > >  	  ambient light and proximity sensor device.
> > > > -- 
> > > > 2.25.1  
> > > 
> > > -- 
> > > With Best Regards,
> > > Andy Shevchenko  
> > 
> > Best,
> > Paul
  

Patch

diff --git a/drivers/iio/light/Kconfig b/drivers/iio/light/Kconfig
index 7cf6e8490123..0d4447df7200 100644
--- a/drivers/iio/light/Kconfig
+++ b/drivers/iio/light/Kconfig
@@ -293,6 +293,8 @@  config RPR0521
 	tristate "ROHM RPR0521 ALS and proximity sensor driver"
 	depends on I2C
 	select REGMAP_I2C
+	select IIO_BUFFER
+	select IIO_TRIGGERED_BUFFER
 	help
 	  Say Y here if you want to build support for ROHM's RPR0521
 	  ambient light and proximity sensor device.