Thread (15 messages) 15 messages, 3 authors, 2021-04-27

Re: [PATCH v4 04/10] Input: wacom_i2c - Add touchscren properties

flat view

From: Alistair Francis <hidden>
Date: 2021-03-30 00:01:57
Also in: lkml

 On Mon, Mar 29, 2021 at 3:08 PM Dmitry Torokhov
[off-list ref] wrote:
On Thu, Mar 25, 2021 at 09:52:24PM -0400, Alistair Francis wrote:
quoted
Connect touchscreen properties to the wacom_i2c.

Signed-off-by: Alistair Francis <redacted>
---
v4:
 - Add touchscreen_report_pos() as well

 drivers/input/touchscreen/wacom_i2c.c | 5 +++++
 1 file changed, 5 insertions(+)
diff --git a/drivers/input/touchscreen/wacom_i2c.c b/drivers/input/touchscreen/wacom_i2c.c
index eada68770671..ee1829dd35f4 100644
--- a/drivers/input/touchscreen/wacom_i2c.c
+++ b/drivers/input/touchscreen/wacom_i2c.c
@@ -11,6 +11,7 @@
 #include <linux/i2c.h>
 #include <linux/slab.h>
 #include <linux/irq.h>
+#include <linux/input/touchscreen.h>
 #include <linux/interrupt.h>
 #include <linux/of.h>
 #include <asm/unaligned.h>
@@ -33,6 +34,7 @@ struct wacom_features {
 struct wacom_i2c {
      struct i2c_client *client;
      struct input_dev *input;
+     struct touchscreen_properties props;
      u8 data[WACOM_QUERY_SIZE];
      bool prox;
      int tool;
@@ -188,6 +190,9 @@ static int wacom_i2c_probe(struct i2c_client *client,
      __set_bit(BTN_STYLUS2, input->keybit);
      __set_bit(BTN_TOUCH, input->keybit);

+     touchscreen_parse_properties(input, true, &wac_i2c->props);
+     touchscreen_report_pos(input, &wac_i2c->props, features.x_max,
+                            features.y_max, true);
??? This goes into wacom_i2c_irq() where it previously used
input_report_abs() for X and Y so that transformations (swap, mirrot)
requested via device properties are applied to the coordinates.
Ah sorry. I misunderstood what touchscreen_report_pos() does (and
didn't read it).

Looking at the actual code it seems that I need to remove

input_report_abs(input, ABS_Y, y);
input_report_abs(input, ABS_X, x);

from wacom_i2c_irq() and add touchscreen_report_pos() to wacom_i2c_irq() instead

I'll do that in the next version.

Alistair
Thanks.

--
Dmitry
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help