Thread (4 messages) 4 messages, 3 authors, 2012-08-22

Re: QUANTA touchscreen controller integrated in HP2310ti no longer recognised (regression in 3.5 and later as compared to 3.3)

flat view

From: Simon Farnsworth <hidden>
Date: 2012-08-22 09:00:22

On Tuesday 21 August 2012 21:06:26 Henrik Rydberg wrote:
Hi Simon,
quoted
We're going through our collection of touch screens, making sure that they all 
work with current kernels, and we've found one that doesn't work with today's 
Linus master.

lsusb describes the screen as:
Bus 006 Device 002: ID 0408:3001 Quanta Computer, Inc. Optical Touch Screen
What about 0408:3008, does that one work?
I don't have a sample of 0408:3008 to try.
quoted
Any ideas on the best way to resolve this regression?
What does 'cat /sys/bus/hid/devices/0003:0408:3001.0001/modalias' say?
It's the same whether or not I revert the patch:

# cat /sys/bus/hid/devices/0003:0408:3001.0001/modalias
hid:b0003g0000v00000408p00003001

If I've understood hid-code.c correctly, this means that 
hdev->group == HID_GROUP_ANY, implying that neither hid_scan_usage nor 
hid_scan_report have run.
The patch below ought to be enough to make it work, although it is
still unclear why it is needed.
I'd like to get to the bottom of why this patch is needed - the patch I
reverted covered 71 touchscreen controllers, and the fact that hdev->group is
set to HID_GROUP_ANY worries me - I'm concerned that there's something
deeper wrong that's causing the USB HID core to not be able to get the report
descriptor reliably.
quoted hunk ↗ jump to hunk
Thanks,
Henrik

---
diff --git a/drivers/hid/hid-multitouch.c b/drivers/hid/hid-multitouch.c
index bd4bc3c..2b775c3 100644
--- a/drivers/hid/hid-multitouch.c
+++ b/drivers/hid/hid-multitouch.c
@@ -963,7 +963,7 @@ static const struct hid_device_id mt_devices[] = {
                MT_USB_DEVICE(USB_VENDOR_ID_QUANTA,
                        USB_DEVICE_ID_QUANTA_OPTICAL_TOUCH) },
        { .driver_data = MT_CLS_CONFIDENCE_CONTACT_ID,
-               MT_USB_DEVICE(USB_VENDOR_ID_QUANTA,
+               HID_USB_DEVICE(USB_VENDOR_ID_QUANTA,
                        USB_DEVICE_ID_QUANTA_OPTICAL_TOUCH_3001) },
        { .driver_data = MT_CLS_CONFIDENCE_CONTACT_ID,
                MT_USB_DEVICE(USB_VENDOR_ID_QUANTA,
-- 
Simon Farnsworth
Software Engineer
ONELAN Ltd
http://www.onelan.com

Attachments

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