Hi guys, Here is the support of hybrid devices presenting pen and touch at the same time. I don't think it's possible to split the handling of the different reports by several hid drivers unless deepest changes in the HID core subsystem. The main problem is the control of the underlaying transport layer of the hid device. For instance, if two drivers (let's say hid-multitouch and hid-generic) handle the same device, and one of them is removed, then we should not call hid_hw_stop at this point, but only when the second is also removed. The other big problem lies with hid drivers that fix the hid report descriptors. We can not split the hid device before we get the fix, so those drivers should have a special behavior. To sum up, I think does not make sense to do such deep changes, and to take such a risk of breaking existing devices. So the solution consists in relying inconditionaly to the quirk MULTI_INPUT for hid-multitouch. Before registering the input device in hid-input, we can test if it has been populated, and if not, then we simply don't register it. In order to prevent a regression for drivers that do not fill the input device, we need to add an other quirk. Cheers, Benjamin Benjamin Tissoires (7): HID: input: don't register unmapped input devices HID: multitouch: breaks out touch handling in specific functions HID: multitouch: do not map usage from non used reports HID: multitouch: add handling for pen in dual-sensors device HID: multitouch: manually send sync event for pen input report HID: multitouch: append " Pen" to the name of the stylus input HID: multitouch: force BTN_STYLUS for pen devices drivers/hid/hid-input.c | 77 ++++++++++++++++++++++ drivers/hid/hid-multitouch.c | 151 ++++++++++++++++++++++++++++++++++++------- include/linux/hid.h | 1 + 3 files changed, 207 insertions(+), 22 deletions(-) -- 1.8.1.2 -- 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