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