iio: tsl2772: remove unused prox_diode_mask variable

Message ID 20230327120823.1369700-1-trix@redhat.com
State New
Headers
Series iio: tsl2772: remove unused prox_diode_mask variable |

Commit Message

Tom Rix March 27, 2023, 12:08 p.m. UTC
  clang with W=1 reports
drivers/iio/light/tsl2772.c:576:24: error: variable
  'prox_diode_mask' set but not used [-Werror,-Wunused-but-set-variable]
        int i, ret, num_leds, prox_diode_mask;
                              ^
This variable is not used so remove it.

Signed-off-by: Tom Rix <trix@redhat.com>
---
 drivers/iio/light/tsl2772.c | 9 ++-------
 1 file changed, 2 insertions(+), 7 deletions(-)
  

Comments

Andy Shevchenko March 27, 2023, 1:07 p.m. UTC | #1
On Mon, Mar 27, 2023 at 08:08:23AM -0400, Tom Rix wrote:
> clang with W=1 reports
> drivers/iio/light/tsl2772.c:576:24: error: variable
>   'prox_diode_mask' set but not used [-Werror,-Wunused-but-set-variable]
>         int i, ret, num_leds, prox_diode_mask;
>                               ^
> This variable is not used so remove it.

While from the compilation point of view this is a correct fix, I think
we need to hear from the author (or interested stakeholders) about this
feature. Perhaps it should be enabled / fixed differently.
  
Jonathan Cameron April 1, 2023, 2:20 p.m. UTC | #2
On Mon, 27 Mar 2023 16:07:48 +0300
Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote:

> On Mon, Mar 27, 2023 at 08:08:23AM -0400, Tom Rix wrote:
> > clang with W=1 reports
> > drivers/iio/light/tsl2772.c:576:24: error: variable
> >   'prox_diode_mask' set but not used [-Werror,-Wunused-but-set-variable]
> >         int i, ret, num_leds, prox_diode_mask;
> >                               ^
> > This variable is not used so remove it.  
> 
> While from the compilation point of view this is a correct fix, I think
> we need to hear from the author (or interested stakeholders) about this
> feature. Perhaps it should be enabled / fixed differently.
> 

Superficially it looks like this value should have been stored to
chip->settings.prox_diode

+CC people who might know...

Jonathan
  
Brian Masney April 1, 2023, 8:23 p.m. UTC | #3
On Sat, Apr 01, 2023 at 03:20:28PM +0100, Jonathan Cameron wrote:
> On Mon, 27 Mar 2023 16:07:48 +0300
> Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote:
> 
> > On Mon, Mar 27, 2023 at 08:08:23AM -0400, Tom Rix wrote:
> > > clang with W=1 reports
> > > drivers/iio/light/tsl2772.c:576:24: error: variable
> > >   'prox_diode_mask' set but not used [-Werror,-Wunused-but-set-variable]
> > >         int i, ret, num_leds, prox_diode_mask;
> > >                               ^
> > > This variable is not used so remove it.  
> > 
> > While from the compilation point of view this is a correct fix, I think
> > we need to hear from the author (or interested stakeholders) about this
> > feature. Perhaps it should be enabled / fixed differently.
> > 
> 
> Superficially it looks like this value should have been stored to
> chip->settings.prox_diode
> 
> +CC people who might know...

Jonathan is correct about the proper fix and is this is my mistake. We
should just need to add this to the bottom of that function:

   chip->settings.prox_diode = prox_diode_mask;

Tom: I can fix this up next week, unless I hear from you otherwise that
you'll do it.

Brian
  

Patch

diff --git a/drivers/iio/light/tsl2772.c b/drivers/iio/light/tsl2772.c
index ad50baa0202c..c090405c2358 100644
--- a/drivers/iio/light/tsl2772.c
+++ b/drivers/iio/light/tsl2772.c
@@ -573,7 +573,7 @@  static int tsl2772_read_prox_led_current(struct tsl2772_chip *chip)
 static int tsl2772_read_prox_diodes(struct tsl2772_chip *chip)
 {
 	struct device *dev = &chip->client->dev;
-	int i, ret, num_leds, prox_diode_mask;
+	int i, ret, num_leds;
 	u32 leds[TSL2772_MAX_PROX_LEDS];
 
 	ret = device_property_count_u32(dev, "amstaos,proximity-diodes");
@@ -590,13 +590,8 @@  static int tsl2772_read_prox_diodes(struct tsl2772_chip *chip)
 		return ret;
 	}
 
-	prox_diode_mask = 0;
 	for (i = 0; i < num_leds; i++) {
-		if (leds[i] == 0)
-			prox_diode_mask |= TSL2772_DIODE0;
-		else if (leds[i] == 1)
-			prox_diode_mask |= TSL2772_DIODE1;
-		else {
+		if (leds[i] > 1) {
 			dev_err(dev, "Invalid value %d in amstaos,proximity-diodes.\n", leds[i]);
 			return -EINVAL;
 		}