summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrodo Lai <frodo.lai@gmail.com>2015-06-17 00:03:53 +0200
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2015-06-17 02:11:27 +0200
commit469d7d22cea146e40efe8c330e5164b4d8f13934 (patch)
treed9ff22546baf2bc17880d7dbede8cd1d6a1e2c66
parentInput: synaptics - add min/max quirk for Lenovo S540 (diff)
downloadlinux-469d7d22cea146e40efe8c330e5164b4d8f13934.tar.xz
linux-469d7d22cea146e40efe8c330e5164b4d8f13934.zip
Input: pixcir_i2c_ts - fix receive error
The i2c_master_recv() uses readsize to receive data from i2c but compares to size of rdbuf which is always 27. This would cause problem when the max_fingers is not 5. Change the comparison value to readsize instead. Fixes: 36874c7e219 ("Input: pixcir_i2c_ts - support up to 5 fingers and hardware tracking IDs:) Cc: stable@vger.kernel.org Signed-off-by: Frodo Lai <frodo_lai@bcmcom.com> Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
-rw-r--r--drivers/input/touchscreen/pixcir_i2c_ts.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/input/touchscreen/pixcir_i2c_ts.c b/drivers/input/touchscreen/pixcir_i2c_ts.c
index 2c2107147319..8f3e243a62bf 100644
--- a/drivers/input/touchscreen/pixcir_i2c_ts.c
+++ b/drivers/input/touchscreen/pixcir_i2c_ts.c
@@ -78,7 +78,7 @@ static void pixcir_ts_parse(struct pixcir_i2c_ts_data *tsdata,
}
ret = i2c_master_recv(tsdata->client, rdbuf, readsize);
- if (ret != sizeof(rdbuf)) {
+ if (ret != readsize) {
dev_err(&tsdata->client->dev,
"%s: i2c_master_recv failed(), ret=%d\n",
__func__, ret);