Re: [PATCH] iio: light: isl29501: Simplify code to kill compiler warning

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, 23 Aug 2018 23:24:35 +0200
Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> wrote:

> With gcc 4.1.2:
> 
>     drivers/iio/proximity/isl29501.c: In function ‘isl29501_register_write’:
>     drivers/iio/proximity/isl29501.c:235: warning: ‘msb’ may be used uninitialized in this function
> 
> While this is a false positive, it can easily be avoided by removing the
> "msb" intermediate variable.
> Remove the "lsb" intermediate variable for consistency.
> 
> Signed-off-by: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx>

Looks sensible to me, but I'd obviously like to leave a little time for 
Mathieu to comment as it's his driver.

Jonathan

> ---
> Compile-tested only.
> ---
>  drivers/iio/proximity/isl29501.c | 12 ++----------
>  1 file changed, 2 insertions(+), 10 deletions(-)
> 
> diff --git a/drivers/iio/proximity/isl29501.c b/drivers/iio/proximity/isl29501.c
> index e5e94540f404dd2c..5ae549075b27c50d 100644
> --- a/drivers/iio/proximity/isl29501.c
> +++ b/drivers/iio/proximity/isl29501.c
> @@ -232,7 +232,6 @@ static u32 isl29501_register_write(struct isl29501_private *isl29501,
>  				   u32 value)
>  {
>  	const struct isl29501_register_desc *reg = &isl29501_registers[name];
> -	u8 msb, lsb;
>  	int ret;
>  
>  	if (!reg->msb && value > U8_MAX)
> @@ -241,22 +240,15 @@ static u32 isl29501_register_write(struct isl29501_private *isl29501,
>  	if (value > U16_MAX)
>  		return -ERANGE;
>  
> -	if (!reg->msb) {
> -		lsb = value & 0xFF;
> -	} else {
> -		msb = (value >> 8) & 0xFF;
> -		lsb = value & 0xFF;
> -	}
> -
>  	mutex_lock(&isl29501->lock);
>  	if (reg->msb) {
>  		ret = i2c_smbus_write_byte_data(isl29501->client,
> -						reg->msb, msb);
> +						reg->msb, value >> 8);
>  		if (ret < 0)
>  			goto err;
>  	}
>  
> -	ret = i2c_smbus_write_byte_data(isl29501->client, reg->lsb, lsb);
> +	ret = i2c_smbus_write_byte_data(isl29501->client, reg->lsb, value);
>  
>  err:
>  	mutex_unlock(&isl29501->lock);





[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Input]     [Linux Kernel]     [Linux SCSI]     [X.org]

  Powered by Linux