From: Nuno Sa Date: Fri, 20 Sep 2024 07:22:52 +0000 (+0200) Subject: Input: adp5588-keys - fix check on return code X-Git-Tag: v6.12-rc1~65^2~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=eb017f4ea13b1a5ad7f4332279f2e4c67b44bdea;p=thirdparty%2Fkernel%2Flinux.git Input: adp5588-keys - fix check on return code During adp5588_setup(), we read all the events to clear the event FIFO. However, adp5588_read() just calls i2c_smbus_read_byte_data() which returns the byte read in case everything goes well. Hence, we need to explicitly check for a negative error code instead of checking for something different than 0. Fixes: e960309ce318 ("Input: adp5588-keys - bail out on returned error") Cc: stable@vger.kernel.org Signed-off-by: Nuno Sa Link: https://lore.kernel.org/r/20240920-fix-adp5588-err-check-v1-1-81f6e957ef24@analog.com Signed-off-by: Dmitry Torokhov --- diff --git a/drivers/input/keyboard/adp5588-keys.c b/drivers/input/keyboard/adp5588-keys.c index 1b0279393df4b..5acaffb7f6e11 100644 --- a/drivers/input/keyboard/adp5588-keys.c +++ b/drivers/input/keyboard/adp5588-keys.c @@ -627,7 +627,7 @@ static int adp5588_setup(struct adp5588_kpad *kpad) for (i = 0; i < KEYP_MAX_EVENT; i++) { ret = adp5588_read(client, KEY_EVENTA); - if (ret) + if (ret < 0) return ret; }