If the data received is not what is expected, we should return an error.

Otherwise, we return 0 or a positive value which will be interpreted as
success, but '*read_val' has not been updated.

Fixes: 73196ebe134d ("HID: alps: add support for Alps T4 Touchpad device")
Signed-off-by: Christophe JAILLET <[email protected]>
---
Untested
---
 drivers/hid/hid-alps.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/drivers/hid/hid-alps.c b/drivers/hid/hid-alps.c
index b1eeb4839bfc..925396fdf0d9 100644
--- a/drivers/hid/hid-alps.c
+++ b/drivers/hid/hid-alps.c
@@ -219,6 +219,8 @@ static int t4_read_write_register(struct hid_device *hdev, 
u32 address,
                        goto exit_readbuf;
                }
 
+               ret = -EINVAL;
+
                if (*(u32 *)&readbuf[6] != address) {
                        dev_err(&hdev->dev, "read register address error 
(%x,%x)\n",
                        *(u32 *)&readbuf[6], address);
-- 
2.14.1

Reply via email to