Re: [RFC] HID and multitouch

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

For the first issue, it seems that the mapping should be put outside
the kernel itself.
Or in a more precise and possible solution, to create a small
component which will do the mapping.

For simple devices it can be done in textual mapping files, but for
others like multi-touch screens, a module doing dynamic mapping can be
a solution.

Rewriting the component to push it from static one2one mapping to
dynamic one may be a transparent solution for other components in next
layers.

Cheers,

Mohamed-Ikbel



On Sun, Dec 6, 2009 at 11:58 AM, Stéphane Chatty <chatty@xxxxxxx> wrote:
> Dear Jiri,
>
> over the last few months I have been working on HID quirks for a bunch of
> multitouch devices: NTrig, two flavours of Stantum devices, 3M, Acer T230H.
> For each of these I have working code, which I should be able to submit real
> soon now.
>
> However, people are asking me questions about why a specific driver is
> needed for each device. Answers are starting to emerge, and it looks like
> they might lead to some work on the Linux HID code itself:
>
> - the one-to-one mapping between HID and evdev is stretched to its limits
> with these devices that have several times the same group of HID fields in
> the same event: an event is made of fingers, each finger is made of an X, a
> Y and a few other fields. We need a mechanism to emit SYN_MT_REPORT between
> fingers.
>
> - furthermore, some fingers have to be discarded because they are
> placeholders with no valid data, and we know if to dump them only when they
> have been fully parsed. Therefore, we need a mechanism to cache finger data
> until the decision is made. Currently, the caching mechanism has to be
> device-dependent because the fields are not exactly the same and they come
> in a device-dependent order.
>
> - for all these devices, it is very tempting to have a touchscreen emulation
> so as to use them with existing software (X.org, particularly). Rafi and I
> share the idea that this should be done by creating two evdev nodes: a
> backward-compatible touchscreen, and a multitouch one. Most of the
> corresponding code could be shared among drivers. However, the algorithm for
> producing the touchscreen events differs from one device to another and we
> need to support this.
>
>
> Any opinions or suggestions?
>
> Cheers
>
> Stéphane
>
> --
> 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
>
--
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

[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux