[PATCH v2 09/10] Input: elan_i2c - correct the width/size base value

From: Benjamin Tissoires
Date: Tue May 21 2019 - 09:30:43 EST


*_traces are the number of antennas. width_* is thus the space between 2
antennas. Which means, we should subtract 1 to the number of antennas
to divide the touchpad by the number of holes between each antenna.

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@xxxxxxxxxx>

--

new in v2
---
drivers/input/mouse/elan_i2c_core.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/input/mouse/elan_i2c_core.c b/drivers/input/mouse/elan_i2c_core.c
index 6f4feedb7765..3375eaa9a72e 100644
--- a/drivers/input/mouse/elan_i2c_core.c
+++ b/drivers/input/mouse/elan_i2c_core.c
@@ -398,8 +398,8 @@ static int elan_query_device_parameters(struct elan_tp_data *data)
if (error)
return error;
}
- data->width_x = data->max_x / x_traces;
- data->width_y = data->max_y / y_traces;
+ data->width_x = data->max_x / (x_traces - 1);
+ data->width_y = data->max_y / (y_traces - 1);

if (device_property_read_u32(&client->dev,
"touchscreen-x-mm", &x_mm) ||
--
2.21.0