Messages in this thread Patch in this message | | | From | Andrew Duggan <> | Subject | [PATCH] Input: synaptics-rmi4: Fix maximum size check for F12 control register 8 | Date | Tue, 19 Jul 2016 16:43:41 -0700 |
| |
According to the RMI4 spec the maximum size of F12 control register 8 is 15 bytes. The current code incorrectly reports an error if control 8 is greater then 14. Making sensors with a control register 8 with 15 bytes unusable.
Signed-off-by: Andrew Duggan <aduggan@synaptics.com> Reported-by: Chris Healy <cphealy@gmail.com> Cc: stable@vger.kernel.org --- drivers/input/rmi4/rmi_f12.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/drivers/input/rmi4/rmi_f12.c b/drivers/input/rmi4/rmi_f12.c index c30fd86..9b0d9f7 100644 --- a/drivers/input/rmi4/rmi_f12.c +++ b/drivers/input/rmi4/rmi_f12.c @@ -68,7 +68,7 @@ static int rmi_f12_read_sensor_tuning(struct f12_data *f12) struct rmi_device *rmi_dev = fn->rmi_dev; int ret; int offset; - u8 buf[14]; + u8 buf[15]; int pitch_x = 0; int pitch_y = 0; int clip_x_low = 0; @@ -88,8 +88,9 @@ static int rmi_f12_read_sensor_tuning(struct f12_data *f12) offset = rmi_register_desc_calc_reg_offset(&f12->control_reg_desc, 8); - if (item->reg_size > 14) { - dev_err(&fn->dev, "F12 control8 should be 14 bytes, not: %ld\n", + if (item->reg_size > 15) { + dev_err(&fn->dev, + "F12 control8 should be a maximum of 15 bytes, not: %ld\n", item->reg_size); return -ENODEV; } -- 2.7.4
| |