* Re: [PATCH 0/2] input: mt: Add EVIOC mechanism for MT slots
@ 2010-05-27 7:03 ` Dmitry Torokhov
0 siblings, 0 replies; 17+ messages in thread
From: Dmitry Torokhov @ 2010-05-27 7:03 UTC (permalink / raw)
To: Ping Cheng
Cc: Henrik Rydberg, Andrew Morton, linux-input, linux-kernel,
Mika Kuoppala, Peter Hutterer, Benjamin Tissoires,
Stephane Chatty, Rafi Rubin, Michael Poole
On Wed, May 26, 2010 at 08:59:35AM -0700, Ping Cheng wrote:
> On Tue, May 25, 2010 at 1:23 PM, Dmitry Torokhov
> <dmitry.torokhov@gmail.com> wrote:
> > On Tue, May 25, 2010 at 09:52:29PM +0200, Henrik Rydberg wrote:
> >> Dmitry Torokhov wrote:
> >> > Hi Henrik,
> >> >
> >> > On Tue, May 25, 2010 at 01:52:57PM +0200, Henrik Rydberg wrote:
> >> >> These patches are in response to the discussion about input state
> >> >> retrieval.
> >> >>
> >> >> The current EVIOCGABS method does not work with MT slots. These
> >> >> patches provides a mechanism where a slot is first selected via a call
> >> >> to EVIOCSABS, after which the corresponding MT events can be extracted
> >> >> with calls to EVIOCGABS.
> >> >>
> >> >> The symmetric operation, to set the MT state via EVIOCSABS, seems to
> >> >> violate input data integrity, and is therefore not implemented.
> >> >>
> >> >
> >> > This looks sane, however the question remains - is there any users for
> >> > this data? Like I mentioned, I can see the need to fetch state of
> >> > switches and ranges of absolute axis, and even non-multitouch ABS values
> >> > (due to the fact that some input devices, like sliders, may stay in a
> >> > certain position for long periods of time), but I expect multitouch data
> >> > to be "refreshed" very quickly.
> >> >
> >> > Thanks.
> >> >
> >>
> >> There were some voices addressing this issue, and the patches are here,
> >> available for whomever to pick up. Drop them if you wish, I will not send them anew.
> >>
> >
> > I'll save them in my queue but will hold off applying until I hear
> > userspace folks requesting such functionality.
>
> Hi Dmitry,
>
> You do have a valid point - the (x,y) from a touch object would most
> likely change all the time. Even if the object itself is in a steady
> state on the digitizer, i.e., without any intentional movement, the
> electronic noise would most likely lead to some (x,y) changes. So, the
> chance that we need to retrieve (x,y) is rare.
>
> However, it is possibe that when X driver starts, an object was
> already on the digitizer. And the digitizer is of such a high quality
> :), it filtered all the noises so we can not locate the touch without
> a EVIOCGABS call.
>
> Plus, from a pure coding/development point of view, it is not a bad
> practice to provide the equivalent features for _MT_ support as we did
> for the existing input devices. At least, it doesn't hurt to make the
> support consistent across devices/tools (considering touch as a new
> input device/tool).
Ping,
I did not say that there was a problem with the patch, I agree with it.
However if no one using this - why should we bother? Will _you_ utilize
this functionality in Wacom X driver? If so let me know and I will merge
it.
--
Dmitry
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 0/2] input: mt: Add EVIOC mechanism for MT slots
2010-05-27 7:03 ` Dmitry Torokhov
@ 2010-05-27 7:08 ` Benjamin Tissoires
-1 siblings, 0 replies; 17+ messages in thread
From: Benjamin Tissoires @ 2010-05-27 7:08 UTC (permalink / raw)
To: Dmitry Torokhov
Cc: Ping Cheng, Henrik Rydberg, Andrew Morton, linux-input,
linux-kernel, Mika Kuoppala, Peter Hutterer, Stephane Chatty,
Rafi Rubin, Michael Poole
Le 27/05/2010 09:03, Dmitry Torokhov a écrit :
> On Wed, May 26, 2010 at 08:59:35AM -0700, Ping Cheng wrote:
>> On Tue, May 25, 2010 at 1:23 PM, Dmitry Torokhov
>> <dmitry.torokhov@gmail.com> wrote:
>>> On Tue, May 25, 2010 at 09:52:29PM +0200, Henrik Rydberg wrote:
>>>> Dmitry Torokhov wrote:
>>>>> Hi Henrik,
>>>>>
>>>>> On Tue, May 25, 2010 at 01:52:57PM +0200, Henrik Rydberg wrote:
>>>>>> These patches are in response to the discussion about input state
>>>>>> retrieval.
>>>>>>
>>>>>> The current EVIOCGABS method does not work with MT slots. These
>>>>>> patches provides a mechanism where a slot is first selected via a call
>>>>>> to EVIOCSABS, after which the corresponding MT events can be extracted
>>>>>> with calls to EVIOCGABS.
>>>>>>
>>>>>> The symmetric operation, to set the MT state via EVIOCSABS, seems to
>>>>>> violate input data integrity, and is therefore not implemented.
>>>>>>
>>>>>
>>>>> This looks sane, however the question remains - is there any users for
>>>>> this data? Like I mentioned, I can see the need to fetch state of
>>>>> switches and ranges of absolute axis, and even non-multitouch ABS values
>>>>> (due to the fact that some input devices, like sliders, may stay in a
>>>>> certain position for long periods of time), but I expect multitouch data
>>>>> to be "refreshed" very quickly.
>>>>>
>>>>> Thanks.
>>>>>
>>>>
>>>> There were some voices addressing this issue, and the patches are here,
>>>> available for whomever to pick up. Drop them if you wish, I will not send them anew.
>>>>
>>>
>>> I'll save them in my queue but will hold off applying until I hear
>>> userspace folks requesting such functionality.
>>
>> Hi Dmitry,
>>
>> You do have a valid point - the (x,y) from a touch object would most
>> likely change all the time. Even if the object itself is in a steady
>> state on the digitizer, i.e., without any intentional movement, the
>> electronic noise would most likely lead to some (x,y) changes. So, the
>> chance that we need to retrieve (x,y) is rare.
>>
>> However, it is possibe that when X driver starts, an object was
>> already on the digitizer. And the digitizer is of such a high quality
>> :), it filtered all the noises so we can not locate the touch without
>> a EVIOCGABS call.
>>
>> Plus, from a pure coding/development point of view, it is not a bad
>> practice to provide the equivalent features for _MT_ support as we did
>> for the existing input devices. At least, it doesn't hurt to make the
>> support consistent across devices/tools (considering touch as a new
>> input device/tool).
>
> Ping,
>
> I did not say that there was a problem with the patch, I agree with it.
> However if no one using this - why should we bother? Will _you_ utilize
> this functionality in Wacom X driver? If so let me know and I will merge
> it.
>
Hi Dmitry,
I'm the guy who submitted some patchs to enable multitouch in the
xf86-input-evdev driver. And I think that I will use the MT_SLOTS as
soon as they are available. It is much easier for the upper part to have
this protocol instead of the protocol type A.
You can count me with as a user of this new protocol and whatever related.
Cheers,
Benjamin
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 0/2] input: mt: Add EVIOC mechanism for MT slots
@ 2010-05-27 7:08 ` Benjamin Tissoires
0 siblings, 0 replies; 17+ messages in thread
From: Benjamin Tissoires @ 2010-05-27 7:08 UTC (permalink / raw)
To: Dmitry Torokhov
Cc: Ping Cheng, Henrik Rydberg, Andrew Morton, linux-input,
linux-kernel, Mika Kuoppala, Peter Hutterer, Stephane Chatty,
Rafi Rubin, Michael Poole
Le 27/05/2010 09:03, Dmitry Torokhov a écrit :
> On Wed, May 26, 2010 at 08:59:35AM -0700, Ping Cheng wrote:
>> On Tue, May 25, 2010 at 1:23 PM, Dmitry Torokhov
>> <dmitry.torokhov@gmail.com> wrote:
>>> On Tue, May 25, 2010 at 09:52:29PM +0200, Henrik Rydberg wrote:
>>>> Dmitry Torokhov wrote:
>>>>> Hi Henrik,
>>>>>
>>>>> On Tue, May 25, 2010 at 01:52:57PM +0200, Henrik Rydberg wrote:
>>>>>> These patches are in response to the discussion about input state
>>>>>> retrieval.
>>>>>>
>>>>>> The current EVIOCGABS method does not work with MT slots. These
>>>>>> patches provides a mechanism where a slot is first selected via a call
>>>>>> to EVIOCSABS, after which the corresponding MT events can be extracted
>>>>>> with calls to EVIOCGABS.
>>>>>>
>>>>>> The symmetric operation, to set the MT state via EVIOCSABS, seems to
>>>>>> violate input data integrity, and is therefore not implemented.
>>>>>>
>>>>>
>>>>> This looks sane, however the question remains - is there any users for
>>>>> this data? Like I mentioned, I can see the need to fetch state of
>>>>> switches and ranges of absolute axis, and even non-multitouch ABS values
>>>>> (due to the fact that some input devices, like sliders, may stay in a
>>>>> certain position for long periods of time), but I expect multitouch data
>>>>> to be "refreshed" very quickly.
>>>>>
>>>>> Thanks.
>>>>>
>>>>
>>>> There were some voices addressing this issue, and the patches are here,
>>>> available for whomever to pick up. Drop them if you wish, I will not send them anew.
>>>>
>>>
>>> I'll save them in my queue but will hold off applying until I hear
>>> userspace folks requesting such functionality.
>>
>> Hi Dmitry,
>>
>> You do have a valid point - the (x,y) from a touch object would most
>> likely change all the time. Even if the object itself is in a steady
>> state on the digitizer, i.e., without any intentional movement, the
>> electronic noise would most likely lead to some (x,y) changes. So, the
>> chance that we need to retrieve (x,y) is rare.
>>
>> However, it is possibe that when X driver starts, an object was
>> already on the digitizer. And the digitizer is of such a high quality
>> :), it filtered all the noises so we can not locate the touch without
>> a EVIOCGABS call.
>>
>> Plus, from a pure coding/development point of view, it is not a bad
>> practice to provide the equivalent features for _MT_ support as we did
>> for the existing input devices. At least, it doesn't hurt to make the
>> support consistent across devices/tools (considering touch as a new
>> input device/tool).
>
> Ping,
>
> I did not say that there was a problem with the patch, I agree with it.
> However if no one using this - why should we bother? Will _you_ utilize
> this functionality in Wacom X driver? If so let me know and I will merge
> it.
>
Hi Dmitry,
I'm the guy who submitted some patchs to enable multitouch in the
xf86-input-evdev driver. And I think that I will use the MT_SLOTS as
soon as they are available. It is much easier for the upper part to have
this protocol instead of the protocol type A.
You can count me with as a user of this new protocol and whatever related.
Cheers,
Benjamin
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 0/2] input: mt: Add EVIOC mechanism for MT slots
2010-05-27 7:08 ` Benjamin Tissoires
@ 2010-05-27 7:24 ` Dmitry Torokhov
-1 siblings, 0 replies; 17+ messages in thread
From: Dmitry Torokhov @ 2010-05-27 7:24 UTC (permalink / raw)
To: Benjamin Tissoires
Cc: Ping Cheng, Henrik Rydberg, Andrew Morton, linux-input,
linux-kernel, Mika Kuoppala, Peter Hutterer, Stephane Chatty,
Rafi Rubin, Michael Poole
On Thu, May 27, 2010 at 09:08:10AM +0200, Benjamin Tissoires wrote:
> Le 27/05/2010 09:03, Dmitry Torokhov a écrit :
> >On Wed, May 26, 2010 at 08:59:35AM -0700, Ping Cheng wrote:
> >>On Tue, May 25, 2010 at 1:23 PM, Dmitry Torokhov
> >><dmitry.torokhov@gmail.com> wrote:
> >>>On Tue, May 25, 2010 at 09:52:29PM +0200, Henrik Rydberg wrote:
> >>>>Dmitry Torokhov wrote:
> >>>>>Hi Henrik,
> >>>>>
> >>>>>On Tue, May 25, 2010 at 01:52:57PM +0200, Henrik Rydberg wrote:
> >>>>>>These patches are in response to the discussion about input state
> >>>>>>retrieval.
> >>>>>>
> >>>>>>The current EVIOCGABS method does not work with MT slots. These
> >>>>>>patches provides a mechanism where a slot is first selected via a call
> >>>>>>to EVIOCSABS, after which the corresponding MT events can be extracted
> >>>>>>with calls to EVIOCGABS.
> >>>>>>
> >>>>>>The symmetric operation, to set the MT state via EVIOCSABS, seems to
> >>>>>>violate input data integrity, and is therefore not implemented.
> >>>>>>
> >>>>>
> >>>>>This looks sane, however the question remains - is there any users for
> >>>>>this data? Like I mentioned, I can see the need to fetch state of
> >>>>>switches and ranges of absolute axis, and even non-multitouch ABS values
> >>>>>(due to the fact that some input devices, like sliders, may stay in a
> >>>>>certain position for long periods of time), but I expect multitouch data
> >>>>>to be "refreshed" very quickly.
> >>>>>
> >>>>>Thanks.
> >>>>>
> >>>>
> >>>>There were some voices addressing this issue, and the patches are here,
> >>>>available for whomever to pick up. Drop them if you wish, I will not send them anew.
> >>>>
> >>>
> >>>I'll save them in my queue but will hold off applying until I hear
> >>>userspace folks requesting such functionality.
> >>
> >>Hi Dmitry,
> >>
> >>You do have a valid point - the (x,y) from a touch object would most
> >>likely change all the time. Even if the object itself is in a steady
> >>state on the digitizer, i.e., without any intentional movement, the
> >>electronic noise would most likely lead to some (x,y) changes. So, the
> >>chance that we need to retrieve (x,y) is rare.
> >>
> >>However, it is possibe that when X driver starts, an object was
> >>already on the digitizer. And the digitizer is of such a high quality
> >>:), it filtered all the noises so we can not locate the touch without
> >>a EVIOCGABS call.
> >>
> >>Plus, from a pure coding/development point of view, it is not a bad
> >>practice to provide the equivalent features for _MT_ support as we did
> >>for the existing input devices. At least, it doesn't hurt to make the
> >>support consistent across devices/tools (considering touch as a new
> >>input device/tool).
> >
> >Ping,
> >
> >I did not say that there was a problem with the patch, I agree with it.
> >However if no one using this - why should we bother? Will _you_ utilize
> >this functionality in Wacom X driver? If so let me know and I will merge
> >it.
> >
>
> Hi Dmitry,
>
> I'm the guy who submitted some patchs to enable multitouch in the
> xf86-input-evdev driver. And I think that I will use the MT_SLOTS as
> soon as they are available. It is much easier for the upper part to
> have this protocol instead of the protocol type A.
>
This is not the question about slotted protocol (which is everyone
agrees is needed), the question is whether anyone will use EIVICGABS to
retrieve the initial MT values in case someone started touching the
device before X opened the corresponding /dev/input/eventX.
--
Dmitry
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 0/2] input: mt: Add EVIOC mechanism for MT slots
@ 2010-05-27 7:24 ` Dmitry Torokhov
0 siblings, 0 replies; 17+ messages in thread
From: Dmitry Torokhov @ 2010-05-27 7:24 UTC (permalink / raw)
To: Benjamin Tissoires
Cc: Ping Cheng, Henrik Rydberg, Andrew Morton, linux-input,
linux-kernel, Mika Kuoppala, Peter Hutterer, Stephane Chatty,
Rafi Rubin, Michael Poole
On Thu, May 27, 2010 at 09:08:10AM +0200, Benjamin Tissoires wrote:
> Le 27/05/2010 09:03, Dmitry Torokhov a écrit :
> >On Wed, May 26, 2010 at 08:59:35AM -0700, Ping Cheng wrote:
> >>On Tue, May 25, 2010 at 1:23 PM, Dmitry Torokhov
> >><dmitry.torokhov@gmail.com> wrote:
> >>>On Tue, May 25, 2010 at 09:52:29PM +0200, Henrik Rydberg wrote:
> >>>>Dmitry Torokhov wrote:
> >>>>>Hi Henrik,
> >>>>>
> >>>>>On Tue, May 25, 2010 at 01:52:57PM +0200, Henrik Rydberg wrote:
> >>>>>>These patches are in response to the discussion about input state
> >>>>>>retrieval.
> >>>>>>
> >>>>>>The current EVIOCGABS method does not work with MT slots. These
> >>>>>>patches provides a mechanism where a slot is first selected via a call
> >>>>>>to EVIOCSABS, after which the corresponding MT events can be extracted
> >>>>>>with calls to EVIOCGABS.
> >>>>>>
> >>>>>>The symmetric operation, to set the MT state via EVIOCSABS, seems to
> >>>>>>violate input data integrity, and is therefore not implemented.
> >>>>>>
> >>>>>
> >>>>>This looks sane, however the question remains - is there any users for
> >>>>>this data? Like I mentioned, I can see the need to fetch state of
> >>>>>switches and ranges of absolute axis, and even non-multitouch ABS values
> >>>>>(due to the fact that some input devices, like sliders, may stay in a
> >>>>>certain position for long periods of time), but I expect multitouch data
> >>>>>to be "refreshed" very quickly.
> >>>>>
> >>>>>Thanks.
> >>>>>
> >>>>
> >>>>There were some voices addressing this issue, and the patches are here,
> >>>>available for whomever to pick up. Drop them if you wish, I will not send them anew.
> >>>>
> >>>
> >>>I'll save them in my queue but will hold off applying until I hear
> >>>userspace folks requesting such functionality.
> >>
> >>Hi Dmitry,
> >>
> >>You do have a valid point - the (x,y) from a touch object would most
> >>likely change all the time. Even if the object itself is in a steady
> >>state on the digitizer, i.e., without any intentional movement, the
> >>electronic noise would most likely lead to some (x,y) changes. So, the
> >>chance that we need to retrieve (x,y) is rare.
> >>
> >>However, it is possibe that when X driver starts, an object was
> >>already on the digitizer. And the digitizer is of such a high quality
> >>:), it filtered all the noises so we can not locate the touch without
> >>a EVIOCGABS call.
> >>
> >>Plus, from a pure coding/development point of view, it is not a bad
> >>practice to provide the equivalent features for _MT_ support as we did
> >>for the existing input devices. At least, it doesn't hurt to make the
> >>support consistent across devices/tools (considering touch as a new
> >>input device/tool).
> >
> >Ping,
> >
> >I did not say that there was a problem with the patch, I agree with it.
> >However if no one using this - why should we bother? Will _you_ utilize
> >this functionality in Wacom X driver? If so let me know and I will merge
> >it.
> >
>
> Hi Dmitry,
>
> I'm the guy who submitted some patchs to enable multitouch in the
> xf86-input-evdev driver. And I think that I will use the MT_SLOTS as
> soon as they are available. It is much easier for the upper part to
> have this protocol instead of the protocol type A.
>
This is not the question about slotted protocol (which is everyone
agrees is needed), the question is whether anyone will use EIVICGABS to
retrieve the initial MT values in case someone started touching the
device before X opened the corresponding /dev/input/eventX.
--
Dmitry
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 0/2] input: mt: Add EVIOC mechanism for MT slots
2010-05-27 7:24 ` Dmitry Torokhov
(?)
@ 2010-05-27 11:17 ` Benjamin Tissoires
2010-05-27 12:33 ` Henrik Rydberg
-1 siblings, 1 reply; 17+ messages in thread
From: Benjamin Tissoires @ 2010-05-27 11:17 UTC (permalink / raw)
To: Dmitry Torokhov
Cc: Ping Cheng, Henrik Rydberg, Andrew Morton, linux-input,
Mika Kuoppala, Peter Hutterer, Stephane Chatty, Rafi Rubin,
Michael Poole
Le 27/05/2010 09:24, Dmitry Torokhov a écrit :
> On Thu, May 27, 2010 at 09:08:10AM +0200, Benjamin Tissoires wrote:
>> Le 27/05/2010 09:03, Dmitry Torokhov a écrit :
>>> On Wed, May 26, 2010 at 08:59:35AM -0700, Ping Cheng wrote:
>>>> On Tue, May 25, 2010 at 1:23 PM, Dmitry Torokhov
>>>> <dmitry.torokhov@gmail.com> wrote:
>>>>> On Tue, May 25, 2010 at 09:52:29PM +0200, Henrik Rydberg wrote:
>>>>>> Dmitry Torokhov wrote:
>>>>>>> Hi Henrik,
>>>>>>>
>>>>>>> On Tue, May 25, 2010 at 01:52:57PM +0200, Henrik Rydberg wrote:
>>>>>>>> These patches are in response to the discussion about input state
>>>>>>>> retrieval.
>>>>>>>>
>>>>>>>> The current EVIOCGABS method does not work with MT slots. These
>>>>>>>> patches provides a mechanism where a slot is first selected via a call
>>>>>>>> to EVIOCSABS, after which the corresponding MT events can be extracted
>>>>>>>> with calls to EVIOCGABS.
>>>>>>>>
>>>>>>>> The symmetric operation, to set the MT state via EVIOCSABS, seems to
>>>>>>>> violate input data integrity, and is therefore not implemented.
>>>>>>>>
>>>>>>>
>>>>>>> This looks sane, however the question remains - is there any users for
>>>>>>> this data? Like I mentioned, I can see the need to fetch state of
>>>>>>> switches and ranges of absolute axis, and even non-multitouch ABS values
>>>>>>> (due to the fact that some input devices, like sliders, may stay in a
>>>>>>> certain position for long periods of time), but I expect multitouch data
>>>>>>> to be "refreshed" very quickly.
>>>>>>>
>>>>>>> Thanks.
>>>>>>>
>>>>>>
>>>>>> There were some voices addressing this issue, and the patches are here,
>>>>>> available for whomever to pick up. Drop them if you wish, I will not send them anew.
>>>>>>
>>>>>
>>>>> I'll save them in my queue but will hold off applying until I hear
>>>>> userspace folks requesting such functionality.
>>>>
>>>> Hi Dmitry,
>>>>
>>>> You do have a valid point - the (x,y) from a touch object would most
>>>> likely change all the time. Even if the object itself is in a steady
>>>> state on the digitizer, i.e., without any intentional movement, the
>>>> electronic noise would most likely lead to some (x,y) changes. So, the
>>>> chance that we need to retrieve (x,y) is rare.
>>>>
>>>> However, it is possibe that when X driver starts, an object was
>>>> already on the digitizer. And the digitizer is of such a high quality
>>>> :), it filtered all the noises so we can not locate the touch without
>>>> a EVIOCGABS call.
>>>>
>>>> Plus, from a pure coding/development point of view, it is not a bad
>>>> practice to provide the equivalent features for _MT_ support as we did
>>>> for the existing input devices. At least, it doesn't hurt to make the
>>>> support consistent across devices/tools (considering touch as a new
>>>> input device/tool).
>>>
>>> Ping,
>>>
>>> I did not say that there was a problem with the patch, I agree with it.
>>> However if no one using this - why should we bother? Will _you_ utilize
>>> this functionality in Wacom X driver? If so let me know and I will merge
>>> it.
>>>
>>
>> Hi Dmitry,
>>
>> I'm the guy who submitted some patchs to enable multitouch in the
>> xf86-input-evdev driver. And I think that I will use the MT_SLOTS as
>> soon as they are available. It is much easier for the upper part to
>> have this protocol instead of the protocol type A.
>>
>
> This is not the question about slotted protocol (which is everyone
> agrees is needed), the question is whether anyone will use EIVICGABS to
> retrieve the initial MT values in case someone started touching the
> device before X opened the corresponding /dev/input/eventX.
>
Sorry for the misunderstanding.
I can see at least 2 scenarios where such feature is interesting.
Scenario n°1:
Imagine a mt-enabled surface, like the Microsoft Surface or other big
devices. On these tables, we can put static objects that can be
recognized by a tag or just by their weight, size, etc. These objects
can be put before the X server starts and may be of interest. But since
these objects are "statics" the kernel driver does not send new values
and the X server does not see them, until they are moved by a human.
Here, I did not understood if the patch allows us to retrieve all slots
that are currently present on the surface or if we can have only the
last one.
Scenario n°2:
The Apple Magicmouse. This device is a mouse with a mt-surface on top of
it. If the filter is good enough, the device won't send the positions of
the fingers that are on the surface as we have quite a static position
while handling a mouse. In the case a user starts X and has a hand on
the mouse, the X server won't see them until they are actually moved.
This may not be a problem but if we need to know the mt-state while
sending the clicks, the driver can misunderstand the user aim.
But from what I understood, if the user has only one contact on the
surface, the slot will not be send and the X driver will be a little bit
lost concerning the slot in use.
So, I don't know if those patches will fit my needs, but for me, it is
clear that the X server will need to retrieve the state of the
mt-surface when the device is initialized.
I hope I'm not too far from the topic....
Cheers,
Benjamin
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 0/2] input: mt: Add EVIOC mechanism for MT slots
2010-05-27 11:17 ` Benjamin Tissoires
@ 2010-05-27 12:33 ` Henrik Rydberg
0 siblings, 0 replies; 17+ messages in thread
From: Henrik Rydberg @ 2010-05-27 12:33 UTC (permalink / raw)
To: Benjamin Tissoires
Cc: Dmitry Torokhov, Ping Cheng, Andrew Morton, linux-input,
Mika Kuoppala, Peter Hutterer, Stephane Chatty, Rafi Rubin,
Michael Poole
Benjamin Tissoires wrote:
>
>
> Le 27/05/2010 09:24, Dmitry Torokhov a écrit :
>> On Thu, May 27, 2010 at 09:08:10AM +0200, Benjamin Tissoires wrote:
>>> Le 27/05/2010 09:03, Dmitry Torokhov a écrit :
>>>> On Wed, May 26, 2010 at 08:59:35AM -0700, Ping Cheng wrote:
>>>>> On Tue, May 25, 2010 at 1:23 PM, Dmitry Torokhov
>>>>> <dmitry.torokhov@gmail.com> wrote:
>>>>>> On Tue, May 25, 2010 at 09:52:29PM +0200, Henrik Rydberg wrote:
>>>>>>> Dmitry Torokhov wrote:
>>>>>>>> Hi Henrik,
>>>>>>>>
>>>>>>>> On Tue, May 25, 2010 at 01:52:57PM +0200, Henrik Rydberg wrote:
>>>>>>>>> These patches are in response to the discussion about input state
>>>>>>>>> retrieval.
>>>>>>>>>
>>>>>>>>> The current EVIOCGABS method does not work with MT slots. These
>>>>>>>>> patches provides a mechanism where a slot is first selected via
>>>>>>>>> a call
>>>>>>>>> to EVIOCSABS, after which the corresponding MT events can be
>>>>>>>>> extracted
>>>>>>>>> with calls to EVIOCGABS.
>>>>>>>>>
>>>>>>>>> The symmetric operation, to set the MT state via EVIOCSABS,
>>>>>>>>> seems to
>>>>>>>>> violate input data integrity, and is therefore not implemented.
>>>>>>>>>
>>>>>>>>
>>>>>>>> This looks sane, however the question remains - is there any
>>>>>>>> users for
>>>>>>>> this data? Like I mentioned, I can see the need to fetch state of
>>>>>>>> switches and ranges of absolute axis, and even non-multitouch
>>>>>>>> ABS values
>>>>>>>> (due to the fact that some input devices, like sliders, may stay
>>>>>>>> in a
>>>>>>>> certain position for long periods of time), but I expect
>>>>>>>> multitouch data
>>>>>>>> to be "refreshed" very quickly.
>>>>>>>>
>>>>>>>> Thanks.
>>>>>>>>
>>>>>>>
>>>>>>> There were some voices addressing this issue, and the patches are
>>>>>>> here,
>>>>>>> available for whomever to pick up. Drop them if you wish, I will
>>>>>>> not send them anew.
>>>>>>>
>>>>>>
>>>>>> I'll save them in my queue but will hold off applying until I hear
>>>>>> userspace folks requesting such functionality.
>>>>>
>>>>> Hi Dmitry,
>>>>>
>>>>> You do have a valid point - the (x,y) from a touch object would most
>>>>> likely change all the time. Even if the object itself is in a steady
>>>>> state on the digitizer, i.e., without any intentional movement, the
>>>>> electronic noise would most likely lead to some (x,y) changes. So, the
>>>>> chance that we need to retrieve (x,y) is rare.
>>>>>
>>>>> However, it is possibe that when X driver starts, an object was
>>>>> already on the digitizer. And the digitizer is of such a high quality
>>>>> :), it filtered all the noises so we can not locate the touch without
>>>>> a EVIOCGABS call.
>>>>>
>>>>> Plus, from a pure coding/development point of view, it is not a bad
>>>>> practice to provide the equivalent features for _MT_ support as we did
>>>>> for the existing input devices. At least, it doesn't hurt to make the
>>>>> support consistent across devices/tools (considering touch as a new
>>>>> input device/tool).
>>>>
>>>> Ping,
>>>>
>>>> I did not say that there was a problem with the patch, I agree with it.
>>>> However if no one using this - why should we bother? Will _you_ utilize
>>>> this functionality in Wacom X driver? If so let me know and I will
>>>> merge
>>>> it.
>>>>
>>>
>>> Hi Dmitry,
>>>
>>> I'm the guy who submitted some patchs to enable multitouch in the
>>> xf86-input-evdev driver. And I think that I will use the MT_SLOTS as
>>> soon as they are available. It is much easier for the upper part to
>>> have this protocol instead of the protocol type A.
>>>
>>
>> This is not the question about slotted protocol (which is everyone
>> agrees is needed), the question is whether anyone will use EIVICGABS to
>> retrieve the initial MT values in case someone started touching the
>> device before X opened the corresponding /dev/input/eventX.
>>
>
> Sorry for the misunderstanding.
>
> I can see at least 2 scenarios where such feature is interesting.
>
> Scenario n°1:
> Imagine a mt-enabled surface, like the Microsoft Surface or other big
> devices. On these tables, we can put static objects that can be
> recognized by a tag or just by their weight, size, etc. These objects
> can be put before the X server starts and may be of interest. But since
> these objects are "statics" the kernel driver does not send new values
> and the X server does not see them, until they are moved by a human.
>
> Here, I did not understood if the patch allows us to retrieve all slots
> that are currently present on the surface or if we can have only the
> last one.
>
> Scenario n°2:
> The Apple Magicmouse. This device is a mouse with a mt-surface on top of
> it. If the filter is good enough, the device won't send the positions of
> the fingers that are on the surface as we have quite a static position
> while handling a mouse. In the case a user starts X and has a hand on
> the mouse, the X server won't see them until they are actually moved.
> This may not be a problem but if we need to know the mt-state while
> sending the clicks, the driver can misunderstand the user aim.
> But from what I understood, if the user has only one contact on the
> surface, the slot will not be send and the X driver will be a little bit
> lost concerning the slot in use.
>
> So, I don't know if those patches will fit my needs, but for me, it is
> clear that the X server will need to retrieve the state of the
> mt-surface when the device is initialized.
>
> I hope I'm not too far from the topic....
>
> Cheers,
> Benjamin
Thank you Benjamin, you got it all right. I thought something similar to what
you describe when writing the patches. I agree with Dmitry that in general, an
MT contact state is dynamic enough not to need much state initialization, but I
also agree with you that there are cases where it is indeed needed.
Henrik
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 0/2] input: mt: Add EVIOC mechanism for MT slots
2010-05-27 7:03 ` Dmitry Torokhov
(?)
(?)
@ 2010-05-27 22:59 ` Ping Cheng
2010-05-27 23:12 ` Dmitry Torokhov
-1 siblings, 1 reply; 17+ messages in thread
From: Ping Cheng @ 2010-05-27 22:59 UTC (permalink / raw)
To: Dmitry Torokhov
Cc: Henrik Rydberg, Andrew Morton, linux-input, linux-kernel,
Mika Kuoppala, Peter Hutterer, Benjamin Tissoires,
Stephane Chatty, Rafi Rubin, Michael Poole
On Thu, May 27, 2010 at 12:03 AM, Dmitry Torokhov
<dmitry.torokhov@gmail.com> wrote:
> On Wed, May 26, 2010 at 08:59:35AM -0700, Ping Cheng wrote:
>> On Tue, May 25, 2010 at 1:23 PM, Dmitry Torokhov
>> <dmitry.torokhov@gmail.com> wrote:
>> > On Tue, May 25, 2010 at 09:52:29PM +0200, Henrik Rydberg wrote:
>> >> Dmitry Torokhov wrote:
>> >> > Hi Henrik,
>> >> >
>> >> > On Tue, May 25, 2010 at 01:52:57PM +0200, Henrik Rydberg wrote:
>> >> >> These patches are in response to the discussion about input state
>> >> >> retrieval.
>> >> >>
>> >> >> The current EVIOCGABS method does not work with MT slots. These
>> >> >> patches provides a mechanism where a slot is first selected via a call
>> >> >> to EVIOCSABS, after which the corresponding MT events can be extracted
>> >> >> with calls to EVIOCGABS.
>> >> >>
>> >> >> The symmetric operation, to set the MT state via EVIOCSABS, seems to
>> >> >> violate input data integrity, and is therefore not implemented.
>> >> >>
>> >> >
>> >> > This looks sane, however the question remains - is there any users for
>> >> > this data? Like I mentioned, I can see the need to fetch state of
>> >> > switches and ranges of absolute axis, and even non-multitouch ABS values
>> >> > (due to the fact that some input devices, like sliders, may stay in a
>> >> > certain position for long periods of time), but I expect multitouch data
>> >> > to be "refreshed" very quickly.
>> >> >
>> >> > Thanks.
>> >> >
>> >>
>> >> There were some voices addressing this issue, and the patches are here,
>> >> available for whomever to pick up. Drop them if you wish, I will not send them anew.
>> >>
>> >
>> > I'll save them in my queue but will hold off applying until I hear
>> > userspace folks requesting such functionality.
>>
>> Hi Dmitry,
>>
>> You do have a valid point - the (x,y) from a touch object would most
>> likely change all the time. Even if the object itself is in a steady
>> state on the digitizer, i.e., without any intentional movement, the
>> electronic noise would most likely lead to some (x,y) changes. So, the
>> chance that we need to retrieve (x,y) is rare.
>>
>> However, it is possibe that when X driver starts, an object was
>> already on the digitizer. And the digitizer is of such a high quality
>> :), it filtered all the noises so we can not locate the touch without
>> a EVIOCGABS call.
>>
>> Plus, from a pure coding/development point of view, it is not a bad
>> practice to provide the equivalent features for _MT_ support as we did
>> for the existing input devices. At least, it doesn't hurt to make the
>> support consistent across devices/tools (considering touch as a new
>> input device/tool).
>
> Ping,
>
> I did not say that there was a problem with the patch, I agree with it.
> However if no one using this - why should we bother? Will _you_ utilize
> this functionality in Wacom X driver? If so let me know and I will merge
> it.
tbh, I can not say that I will need it in my X driver for sure. But I
vote for it to be merged.
Thank you for placing me in such an important position :).
Ping
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH 0/2] input: mt: Add EVIOC mechanism for MT slots
2010-05-27 22:59 ` Ping Cheng
@ 2010-05-27 23:12 ` Dmitry Torokhov
0 siblings, 0 replies; 17+ messages in thread
From: Dmitry Torokhov @ 2010-05-27 23:12 UTC (permalink / raw)
To: Ping Cheng
Cc: Henrik Rydberg, Andrew Morton, linux-input, linux-kernel,
Mika Kuoppala, Peter Hutterer, Benjamin Tissoires,
Stephane Chatty, Rafi Rubin, Michael Poole
On Thursday, May 27, 2010 03:59:37 pm Ping Cheng wrote:
> On Thu, May 27, 2010 at 12:03 AM, Dmitry Torokhov
>
> <dmitry.torokhov@gmail.com> wrote:
> > On Wed, May 26, 2010 at 08:59:35AM -0700, Ping Cheng wrote:
> >> On Tue, May 25, 2010 at 1:23 PM, Dmitry Torokhov
> >>
> >> <dmitry.torokhov@gmail.com> wrote:
> >> > On Tue, May 25, 2010 at 09:52:29PM +0200, Henrik Rydberg wrote:
> >> >> Dmitry Torokhov wrote:
> >> >> > Hi Henrik,
> >> >> >
> >> >> > On Tue, May 25, 2010 at 01:52:57PM +0200, Henrik Rydberg wrote:
> >> >> >> These patches are in response to the discussion about input state
> >> >> >> retrieval.
> >> >> >>
> >> >> >> The current EVIOCGABS method does not work with MT slots. These
> >> >> >> patches provides a mechanism where a slot is first selected via a
> >> >> >> call to EVIOCSABS, after which the corresponding MT events can be
> >> >> >> extracted with calls to EVIOCGABS.
> >> >> >>
> >> >> >> The symmetric operation, to set the MT state via EVIOCSABS, seems
> >> >> >> to violate input data integrity, and is therefore not
> >> >> >> implemented.
> >> >> >
> >> >> > This looks sane, however the question remains - is there any users
> >> >> > for this data? Like I mentioned, I can see the need to fetch state
> >> >> > of switches and ranges of absolute axis, and even non-multitouch
> >> >> > ABS values (due to the fact that some input devices, like sliders,
> >> >> > may stay in a certain position for long periods of time), but I
> >> >> > expect multitouch data to be "refreshed" very quickly.
> >> >> >
> >> >> > Thanks.
> >> >>
> >> >> There were some voices addressing this issue, and the patches are
> >> >> here, available for whomever to pick up. Drop them if you wish, I
> >> >> will not send them anew.
> >> >
> >> > I'll save them in my queue but will hold off applying until I hear
> >> > userspace folks requesting such functionality.
> >>
> >> Hi Dmitry,
> >>
> >> You do have a valid point - the (x,y) from a touch object would most
> >> likely change all the time. Even if the object itself is in a steady
> >> state on the digitizer, i.e., without any intentional movement, the
> >> electronic noise would most likely lead to some (x,y) changes. So, the
> >> chance that we need to retrieve (x,y) is rare.
> >>
> >> However, it is possibe that when X driver starts, an object was
> >> already on the digitizer. And the digitizer is of such a high quality
> >>
> >> :), it filtered all the noises so we can not locate the touch without
> >>
> >> a EVIOCGABS call.
> >>
> >> Plus, from a pure coding/development point of view, it is not a bad
> >> practice to provide the equivalent features for _MT_ support as we did
> >> for the existing input devices. At least, it doesn't hurt to make the
> >> support consistent across devices/tools (considering touch as a new
> >> input device/tool).
> >
> > Ping,
> >
> > I did not say that there was a problem with the patch, I agree with it.
> > However if no one using this - why should we bother? Will _you_ utilize
> > this functionality in Wacom X driver? If so let me know and I will merge
> > it.
>
> tbh, I can not say that I will need it in my X driver for sure. But I
> vote for it to be merged.
Well, at this point I am in "no users - no functionality" mode, so I will
only count votes of users :P
--
Dmitry
^ permalink raw reply [flat|nested] 17+ messages in thread