Skip to contentSkip to conversation

Input: wacom_w8001 - drop use of ABS_MT_TOOL_TYPE

PATCH Applied Peter Hutterer 3 participants 6 messages Jan 11, 2016 – Jul 14, 2016

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Input: wacom_w8001 - drop use of ABS_MT_TOOL_TYPE

As of e0361b70175f0cd6199dd9ed6679632de73973d4
Input: wacom_w8001 - split the touch and pen devices into two devices
the touch events aren't multiplexed over the same device anymore, the use of ABS_MT_TOOL_TYPE is superfluous. And even before then it only ever sent MT_TOOL_TYPE_FINGER anyway.

---
 drivers/input/touchscreen/wacom_w8001.c | 3 ---
 1 file changed, 3 deletions(-)
drivers/input/touchscreen/wacom_w8001.c +0 -3
index fe983e7..bab3c6a 100644
@@ -155,7 +155,6 @@ static void parse_multi_touch(struct w8001 *w8001)
 		bool touch = data[0] & (1 << i);
 
 		input_mt_slot(dev, i);
-		input_mt_report_slot_state(dev, MT_TOOL_FINGER, touch);
 		if (touch) {
 			x = (data[6 * i + 1] << 7) | data[6 * i + 2];
 			y = (data[6 * i + 3] << 7) | data[6 * i + 4];
@@ -514,8 +513,6 @@ static int w8001_setup_touch(struct w8001 *w8001, char *basename,
 					0, touch.x, 0, 0);
 		input_set_abs_params(dev, ABS_MT_POSITION_Y,
 					0, touch.y, 0, 0);
-		input_set_abs_params(dev, ABS_MT_TOOL_TYPE,
-					0, MT_TOOL_MAX, 0, 0);
 
 		strlcat(basename, " 2FG", basename_sz);
 		if (w8001->max_pen_x && w8001->max_pen_y)
Signature · 1 line
2.5.0
maintainer Applied
#1 lore raw
Quoted 7 lines · Peter Hutterer

As of e0361b70175f0cd6199dd9ed6679632de73973d4
Input: wacom_w8001 - split the touch and pen devices into two devices
the touch events aren't multiplexed over the same device anymore, the use of ABS_MT_TOOL_TYPE is superfluous. And even before then it only ever sent MT_TOOL_TYPE_FINGER anyway.

Applied, thank you.

Quoted 28 lines
---
 drivers/input/touchscreen/wacom_w8001.c | 3 ---
 1 file changed, 3 deletions(-)
drivers/input/touchscreen/wacom_w8001.c +0 -3
index fe983e7..bab3c6a 100644
@@ -155,7 +155,6 @@ static void parse_multi_touch(struct w8001 *w8001)
 		bool touch = data[0] & (1 << i);
 
 		input_mt_slot(dev, i);
-		input_mt_report_slot_state(dev, MT_TOOL_FINGER, touch);
 		if (touch) {
 			x = (data[6 * i + 1] << 7) | data[6 * i + 2];
 			y = (data[6 * i + 3] << 7) | data[6 * i + 4];
@@ -514,8 +513,6 @@ static int w8001_setup_touch(struct w8001 *w8001, char *basename,
 					0, touch.x, 0, 0);
 		input_set_abs_params(dev, ABS_MT_POSITION_Y,
 					0, touch.y, 0, 0);
-		input_set_abs_params(dev, ABS_MT_TOOL_TYPE,
-					0, MT_TOOL_MAX, 0, 0);
 
 		strlcat(basename, " 2FG", basename_sz);
 		if (w8001->max_pen_x && w8001->max_pen_y)
Signature · 1 line
2.5.0
Signature · 1 line
Dmitry
maintainer
#2 lore raw
Quoted 10 lines · Dmitry Torokhov
Quoted 7 lines · Peter Hutterer

As of e0361b70175f0cd6199dd9ed6679632de73973d4
Input: wacom_w8001 - split the touch and pen devices into two devices
the touch events aren't multiplexed over the same device anymore, the use of ABS_MT_TOOL_TYPE is superfluous. And even before then it only ever sent MT_TOOL_TYPE_FINGER anyway.

Applied, thank you.

Hmm, so I applied that but removal of input_mt_report_slot_state() means that we do not generate tacking IDs for the contacts. Revert?

Quoted 32 lines
Quoted 27 lines
---
 drivers/input/touchscreen/wacom_w8001.c | 3 ---
 1 file changed, 3 deletions(-)
drivers/input/touchscreen/wacom_w8001.c +0 -4
index fe983e7..bab3c6a 100644
@@ -155,7 +155,6 @@ static void parse_multi_touch(struct w8001 *w8001)
              bool touch = data[0] & (1 << i);
 
              input_mt_slot(dev, i);
-             input_mt_report_slot_state(dev, MT_TOOL_FINGER, touch);
              if (touch) {
                      x = (data[6 * i + 1] << 7) | data[6 * i + 2];
                      y = (data[6 * i + 3] << 7) | data[6 * i + 4];
@@ -514,8 +513,6 @@ static int w8001_setup_touch(struct w8001 *w8001, char *basename,
                                      0, touch.x, 0, 0);
              input_set_abs_params(dev, ABS_MT_POSITION_Y,
                                      0, touch.y, 0, 0);
-             input_set_abs_params(dev, ABS_MT_TOOL_TYPE,
-                                     0, MT_TOOL_MAX, 0, 0);
 
              strlcat(basename, " 2FG", basename_sz);
              if (w8001->max_pen_x && w8001->max_pen_y)
--
Quoted 2 lines

2.5.0

--
Dmitry

Signature · 1 line
Dmitry
#3 lore raw
Quoted 10 lines · Dmitry Torokhov
Quoted 7 lines · Dmitry Torokhov
Quoted 6 lines · Peter Hutterer

As of e0361b70175f0cd6199dd9ed6679632de73973d4
Input: wacom_w8001 - split the touch and pen devices into two devices
the touch events aren't multiplexed over the same device anymore, the use of ABS_MT_TOOL_TYPE is superfluous. And even before then it only ever sent MT_TOOL_TYPE_FINGER anyway.

Quoted 6 lines
Quoted 3 lines
Quoted 1 line

Applied, thank you.

Hmm, so I applied that but removal of input_mt_report_slot_state() means that we do not generate tacking IDs for the contacts.

You are right. I have a set of patches to clean up the code. It is still under testing/reviewing...

Quoted 2 lines

Revert?

It may be quicker to revert this one now. I'll submit the clean up set later.

Thanks,

Ping

Quoted 38 lines
Quoted 25 lines
Quoted 25 lines

---
 drivers/input/touchscreen/wacom_w8001.c | 3 ---
 1 file changed, 3 deletions(-)
drivers/input/touchscreen/wacom_w8001.c +0 -3
index fe983e7..bab3c6a 100644
@@ -155,7 +155,6 @@ static void parse_multi_touch(struct w8001 *w8001)
              bool touch = data[0] & (1 << i);
 
              input_mt_slot(dev, i);
-             input_mt_report_slot_state(dev, MT_TOOL_FINGER, touch);
              if (touch) {
                      x = (data[6 * i + 1] << 7) | data[6 * i + 2];
                      y = (data[6 * i + 3] << 7) | data[6 * i + 4];
@@ -514,8 +513,6 @@ static int w8001_setup_touch(struct w8001 *w8001, char *basename,
                                      0, touch.x, 0, 0);
              input_set_abs_params(dev, ABS_MT_POSITION_Y,
                                      0, touch.y, 0, 0);
-             input_set_abs_params(dev, ABS_MT_TOOL_TYPE,
-                                     0, MT_TOOL_MAX, 0, 0);
 
Quoted 8 lines
Quoted 5 lines
drivers/input/touchscreen/wacom_w8001.c +0 -1
              strlcat(basename, " 2FG", basename_sz);
              if (w8001->max_pen_x && w8001->max_pen_y)
--

2.5.0

--
Dmitry

--
Dmitry

#4 lore raw
Quoted 18 lines · Ping Cheng
Quoted 10 lines · Dmitry Torokhov
Quoted 7 lines · Dmitry Torokhov
Quoted 6 lines · Peter Hutterer

As of e0361b70175f0cd6199dd9ed6679632de73973d4
Input: wacom_w8001 - split the touch and pen devices into two devices
the touch events aren't multiplexed over the same device anymore, the use of ABS_MT_TOOL_TYPE is superfluous. And even before then it only ever sent MT_TOOL_TYPE_FINGER anyway.

Quoted 6 lines
Quoted 3 lines
Quoted 1 line

Applied, thank you.

Hmm, so I applied that but removal of input_mt_report_slot_state() means that we do not generate tacking IDs for the contacts.

Quoted 7 lines

You are right. I have a set of patches to clean up the code. It is still under testing/reviewing...

Quoted 2 lines

Revert?

It may be quicker to revert this one now. I'll submit the clean up set later.

yeah, I agree and we found another bug with these devices. It'll be easier to merge the fixed set.

Cheers,
Peter

maintainer
#5 lore raw
Quoted 23 lines · Peter Hutterer
Quoted 22 lines · Ping Cheng
Quoted 10 lines · Dmitry Torokhov
Quoted 7 lines · Dmitry Torokhov
Quoted 6 lines · Peter Hutterer

As of e0361b70175f0cd6199dd9ed6679632de73973d4
Input: wacom_w8001 - split the touch and pen devices into two devices
the touch events aren't multiplexed over the same device anymore, the use of ABS_MT_TOOL_TYPE is superfluous. And even before then it only ever sent MT_TOOL_TYPE_FINGER anyway.

Quoted 6 lines
Quoted 3 lines
Quoted 1 line

Applied, thank you.

Hmm, so I applied that but removal of input_mt_report_slot_state() means that we do not generate tacking IDs for the contacts.

You are right. I have a set of patches to clean up the code. It is still under testing/reviewing...

Quoted 1 line
Quoted 6 lines
Quoted 3 lines
Quoted 1 line

Revert?

It may be quicker to revert this one now. I'll submit the clean up set later.

yeah, I agree and we found another bug with these devices. It'll be easier to merge the fixed set.

OK, reverted (and revert marked for stable). I added your acks to the revert commit.

Thanks!

Signature · 1 line
Dmitry