From: Christophe JAILLET Date: Mon, 19 Mar 2018 20:53:28 +0000 (+0100) Subject: HID: alps: Check errors returned by 't4_read_write_register()' X-Git-Tag: microblaze-v4.18-rc3~34^2~8^2~1 X-Git-Url: http://git.monstr.eu/?a=commitdiff_plain;h=69934012f394d1db11c3c0c781fd88b6ae447dbe;p=linux-2.6-microblaze.git HID: alps: Check errors returned by 't4_read_write_register()' If only the first 't4_read_write_register()' call fails, the error code will be overwritten and lost. Directly report the error instead. While at it, log some errors if 't4_read_write_register()' fails, as done in the rest of the driver. Signed-off-by: Christophe JAILLET Signed-off-by: Jiri Kosina --- diff --git a/drivers/hid/hid-alps.c b/drivers/hid/hid-alps.c index fe8a0624d5e4..b7091507c33f 100644 --- a/drivers/hid/hid-alps.c +++ b/drivers/hid/hid-alps.c @@ -460,17 +460,35 @@ static int __maybe_unused alps_post_reset(struct hid_device *hdev) case T4: ret = t4_read_write_register(hdev, T4_PRM_FEED_CONFIG_1, NULL, T4_I2C_ABS, false); + if (ret < 0) { + dev_err(&hdev->dev, "failed T4_PRM_FEED_CONFIG_1 (%d)\n", + ret); + goto exit; + } + ret = t4_read_write_register(hdev, T4_PRM_FEED_CONFIG_4, NULL, T4_FEEDCFG4_ADVANCED_ABS_ENABLE, false); + if (ret < 0) { + dev_err(&hdev->dev, "failed T4_PRM_FEED_CONFIG_4 (%d)\n", + ret); + goto exit; + } break; case U1: ret = u1_read_write_register(hdev, ADDRESS_U1_DEV_CTRL_1, NULL, U1_TP_ABS_MODE | U1_SP_ABS_MODE, false); + if (ret < 0) { + dev_err(&hdev->dev, "failed to change TP mode (%d)\n", + ret); + goto exit; + } break; default: break; } + +exit: return ret; }