Re: [PATCH] input : wacom - report resolution for ABS_MT events

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

 



On Fri, Jan 28, 2011 at 11:37 AM, Dmitry Torokhov
<dmitry.torokhov@xxxxxxxxx> wrote:
> On Fri, Jan 28, 2011 at 11:01:39AM -0800, Ping Cheng wrote:
>> On Fri, Jan 28, 2011 at 10:46 AM, Dmitry Torokhov
>> <dmitry.torokhov@xxxxxxxxx> wrote:
>> > On Fri, Jan 28, 2011 at 10:23:59AM -0800, Ping Cheng wrote:
>> >> On Fri, Jan 28, 2011 at 9:30 AM, Henrik Rydberg <rydberg@xxxxxxxxxxx> wrote:
>> >> > Hi Ping,
>> >> >
>> >> >> This is mainly required by the serial pen and touch devices since
>> >> >> both pen and touch are on the same port. Updated the USB ones to
>> >> >> keep MT event definition consistent among serial and USB devices.
>> >> >
>> >> > Why is this change performed? What does the patch do? Please elaborate
>> >> > a little bit.
>> >>
>> >> Let's see if I can explain it clearer or not.
>> >>
>> >> We need to report resolution to userland for wacom_w8001.c. Since pen
>> >> and touch data are reported through the same logical port for serial
>> >> devices, using input_abs_set_res  for ABS_X/Y,  we can only pass the
>> >> resolution for pen or touch. So, I let ABS_X/Y report pen resolution
>> >> since most legacy ST clients process pen data over touch. However, for
>> >> multi-touch clients, especially for those that support gestures, touch
>> >> resolution is needed to calculate the physical distance between two
>> >> touch points. Using  ABS_MT_POSITION_X/Y does not cause confusion and
>> >> it is quite intuitive.
>> >
>> > We just went through the round of why we should scale events from
>> > different tools when they use the same event devices and I do not see
>> > why MT data is any different.
>>
>> At the time when we worked on that, we did not consider resolution. We
>> only scaled the logical values.
>>
>> > Devices have only one set of physical axes (MT or not)
>>
>> You are right if the device only supports one type of tools. Yes, ST
>> or pen can go with ABS_X/Y. MT goes with MT. However, we are dealing
>> with a dual tool case: pen and touch on the same port. Using only one
>> set of axes would not be able to cover both tool events and pass the
>> resolution to the userland.
>>
>> > so I believe
>> > min, max and resultion should be reported on ABS_X, Y, X, etc, or, if
>> > you want to have this data in ABS_MT_POSITION, it should be trhe same.
>>
>> max/min is different from resolution. We can scale max/min since they
>> are logical data. But we can not change the device's physical size.
>> That's the root cause of the "stubborn" nature of resolution.
>
> This is the same device so it should have the same physical dimensions,
> right?

No, pen and touch use different chips. They can have different sizes.

Ping
--
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