diff mbox series

[linux,dev-5.15,1/1] leds: pca955x: fix return value checking of smbus block read

Message ID 20220928085701.1822967-1-potin.lai.pt@gmail.com
State New
Headers show
Series [linux,dev-5.15,1/1] leds: pca955x: fix return value checking of smbus block read | expand

Commit Message

Potin Lai Sept. 28, 2022, 8:57 a.m. UTC
In i2c_smbus_read_i2c_block_data(), it returns negtive value for error
code, otherwise returns data length of reading.
Change the if statement to "if (err < 0)" to indicate the real error
returned by i2c_smbus_read_i2c_block_data().

LORE Link: https://lore.kernel.org/all/20220928084709.1822312-1-potin.lai.pt@gmail.com/

Signed-off-by: Potin Lai <potin.lai.pt@gmail.com>
---
 drivers/leds/leds-pca955x.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Eddie James Sept. 29, 2022, 8:40 p.m. UTC | #1
On 9/28/22 03:57, Potin Lai wrote:
> In i2c_smbus_read_i2c_block_data(), it returns negtive value for error
> code, otherwise returns data length of reading.
> Change the if statement to "if (err < 0)" to indicate the real error
> returned by i2c_smbus_read_i2c_block_data().


Thanks! My mistake here.

Reviewed-by: Eddie James <eajames@linux.ibm.com>

Tested-by: Eddie James <eajames@linux.ibm.com>


>
> LORE Link: https://lore.kernel.org/all/20220928084709.1822312-1-potin.lai.pt@gmail.com/
>
> Signed-off-by: Potin Lai <potin.lai.pt@gmail.com>
> ---
>   drivers/leds/leds-pca955x.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/leds/leds-pca955x.c b/drivers/leds/leds-pca955x.c
> index cf0a9fe20086a..cba9876b11872 100644
> --- a/drivers/leds/leds-pca955x.c
> +++ b/drivers/leds/leds-pca955x.c
> @@ -689,7 +689,7 @@ static int pca955x_probe(struct i2c_client *client)
>   	err = i2c_smbus_read_i2c_block_data(client,
>   					    0x10 | (pca955x_num_input_regs(chip->bits) + 4), nls,
>   					    ls1);
> -	if (err)
> +	if (err < 0)
>   		return err;
>   
>   	for (i = 0; i < nls; ++i)
diff mbox series

Patch

diff --git a/drivers/leds/leds-pca955x.c b/drivers/leds/leds-pca955x.c
index cf0a9fe20086a..cba9876b11872 100644
--- a/drivers/leds/leds-pca955x.c
+++ b/drivers/leds/leds-pca955x.c
@@ -689,7 +689,7 @@  static int pca955x_probe(struct i2c_client *client)
 	err = i2c_smbus_read_i2c_block_data(client,
 					    0x10 | (pca955x_num_input_regs(chip->bits) + 4), nls,
 					    ls1);
-	if (err)
+	if (err < 0)
 		return err;
 
 	for (i = 0; i < nls; ++i)