On Fri, 23 Nov 2012, Benjamin Tissoires wrote: > Last week, I received two new interesting devices report: > - N-trig win 8 certified pen/touch panel > - Samsung Nexio 42" Bejmanin, Henrik, what are the plans with this patchset please? Planning respin for 3.9? Thanks. > > > N-trig device > ------------- > The first one is the origin of patches 1 to 6. > The multiouch part worked flawlessly with the win 8 patches I sent before, > but the pen part was completely ignored. > I could have used the quirk MULTI_INPUT, but by testing this quirk against > several devices report I have (https://github.com/bentiss/hid-devices), it > was a pain because some of them create 4 or 5 useless inputs. > > I choose to allow the hid driver to control the creation of input devices, thus > patches 1 to 3. > > > Nexio device > ------------ > The second one was more problematic. Indeed, it was not working at all with the > current release of hid-multitouch. I had several ghost points, and any of the > available quirks worked. > I finaly found the trick, and this trick applies to all the win7 and win8 > devices I saw so far (same url as before). > > So I think I finally understood why the windows driver was better than us: it > first looks at the announced contact count, and treat only the right number. It > was so simple... and it works so well... > > However, for us, I need to get this information from the raw_event because most > of the devices put the contact count field at the end of the report. > > I also decided to change the default class as it is much more tolerant than the > previous one. I could have changed all the devices, but in the end, I changed > only those that get a benefit and that I could test. > > > Debug tool > ---------- > I was able to discover this trick only recently because I made a small C program > that allows me to replay the hid events through hid-multitouch. The code is > here: https://github.com/bentiss/hid-replay and you will need a kernel 3.6 > to make it work (it requires uhid). > > However, be careful, this program can be the root of many kernel oopses if the > targeted hid module tries to directly handle the usb or with any of the usbhid > function. > So, Henrik, I really need you to push your abstraction of usbhid in all hid > modules :) > > Anyway, this tool can be very helpful to debug hid devices, that's why I share > it there... and also because I work for an open-source company :) > > Happy reviewing. > > Cheers, > Benjamin > > Benjamin Tissoires (11): > HID: hid-input factorize hid_input allocation > HID: hid-input: simplify hid_input allocation and registration > HID: hid-input: export hidinput_allocation function > HID: hid-multitouch: creates and handle stylus report with dual-sensors > HID: hid-multitouch: manually send sync event for pen input report > HID: hid-multitouch: append " Pen" to the name of the stylus input > HID: hid-multitouch: rename MT_CLS_DEFAULT into MT_CLS_NSMU > HID: hid-multitouch: add support for Nexio 42" panel > HID: hid-multitouch: check if ContactCount is given for default quirk > HID: hid-multitouch: fix protocol for 3 devices > HID: hid-multitouch: use MT_QUIRK_CONTACT_COUNT_ACCURATE for win 8 devices > > drivers/hid/hid-ids.h | 3 + > drivers/hid/hid-input.c | 100 +++++++++++++--------- > drivers/hid/hid-multitouch.c | 198 +++++++++++++++++++++++++++++++++++-------- > include/linux/hid.h | 1 + > 4 files changed, 229 insertions(+), 73 deletions(-) > > -- > 1.8.0 > -- Jiri Kosina SUSE Labs -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html