Home
Reading
Searching
Subscribe
Sponsors
Statistics
Posting
Contact
Spam
Lists
Links
About
Hosting
Filtering
Features Download
Marketing
Archives
FAQ
Blog
 
Gmane
From: Benjamin Tissoires <benjamin.tissoires <at> redhat.com>
Subject: [PATCH 0/7] HID: multitouch: support of hybrid finger/pen devices
Newsgroups: gmane.linux.kernel
Date: Wednesday 27th February 2013 16:55:20 UTC (over 3 years ago)
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 [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
 
CD: 30ms