Thread (16 messages) 16 messages, 2 authors, 2015-02-26

Re: [PATCH 3/4] HID: uclogic: present only the working interfaces on the Huion tablets

From: Benjamin Tissoires <hidden>
Date: 2015-02-26 17:03:07
Also in: lkml

On Feb 25 2015 or thereabouts, Benjamin Tissoires wrote:
On Feb 25 2015 or thereabouts, Nikolai Kondrashov wrote:
quoted
On 02/25/2015 02:05 AM, Benjamin Tissoires wrote:
quoted
The Huion tablets show 3 interfaces. Only the first and the third
are currently used.
Also remove HID_QUIRK_MULTI_INPUT for the third interface to not
create more than needed input nodes.

Signed-off-by: Benjamin Tissoires <redacted>
---
 drivers/hid/hid-uclogic.c | 5 +++++
 1 file changed, 5 insertions(+)
diff --git a/drivers/hid/hid-uclogic.c b/drivers/hid/hid-uclogic.c
index 397f1df..c03e076 100644
--- a/drivers/hid/hid-uclogic.c
+++ b/drivers/hid/hid-uclogic.c
@@ -840,6 +840,11 @@ static int uclogic_probe(struct hid_device *hdev,
 				hid_err(hdev, "tablet enabling failed\n");
 				return rc;
 			}
+		} else if (intf->cur_altsetting->desc.bInterfaceNumber == 2) {
+			hdev->quirks &= ~HID_QUIRK_MULTI_INPUT;
+		} else {
+			/* Ignore all unused interfaces */
+			return -ENODEV;
 		}
 		break;
 	}
I would hesitate to remove the mouse interface as there are relatively fresh
UC-Logic tablets [1] out there which have a mouse, and which could respond to
the initialization. These mice are of questionable usefulness, true, but
leaving the interface enabled could make it easier for other people to
experiment with using this driver with their tablets.
OK, I will just remove the quirk for the mouse interface then.
I ended up removing this patch in the series. Having
HID_QUIRK_MULTI_INPUT set allows a fine tuning of the names of the input
nodes so we can just enhance the list of suffix and get something
sensible for the users.

The only concern is that there will be a second "Pen" interface, but
that can be removed based on the PID (or fixed with a report descriptor).
I'll add an extra patch for that too.

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