[PATCH] evdev: Support the "Calibration" string option.

Tias tias at ulyssis.org
Wed Nov 18 15:14:31 PST 2009


Peter Hutterer wrote:
> On Wed, Nov 11, 2009 at 09:29:04PM +0100, Tias wrote:
>> Hello,
>>
>> Almost all touchscreen drivers before evdev (elographics, mutouch,
>> penmount, evtouch and all deprecated serial drivers) use the same Xorg
>> config names for calibration, namely:
>> SwapXY
>> MinX
>> MaxX
>> MinY
>> MaxY
>>
>> Unfortunately, evdev chose the name 'SwapAxes' instead of 'SwapXY'. But
>> with the patch from the email below, the gap with the established
>> drivers is increased by putting all calibration values in one joined
>> 'Calibration <minx> <maxx> <miny> <maxy>'
>>
>> I would like to argue for using the same standard config names for the
>> evdev driver. This would allow people to easily switch to and from the
>> evdev driver: just change the name of the driver. It would also ease the
>> work of calibration software and FDI policy files: the same
>> min/maxX/Y can be used for all touchscreen drivers.
>>
>>
>> Attached is a patch that changes the evdev driver to also use SwapXY
>> and to use MinX,MaxX,MinY,MaxY for calibration. The manpage is
>> updated too.
>> Signed-off-by: Tias Guns <tias at ulyssis.org>
> 
> sorry, no. your arguments are good, but I don't want to have two different
> options that configure the same thing. it makes it harder to triage bugs and
> debug for very little benefit. the only time this is really an issue is when
> you're switching drivers between old driver and evdev, in which case some
> configuration is involved anyway. we've already released 2.3 with the
> options we have, removing them now is not an option.

We could keep the current option too, and just add a second one. You 
decide, but still I don't see a problem with 2 configuration options, 
possibly both or only one being documented.
Imho, the importance of the compatibility of evdev depends on its 
ambition wrt. touchscreens. Currently the only advantage of evdev is 
that it allows dynamic calibration. Other then that, evtouch has a 
dejittering-like MoveLimit and right-click emulation with LongTouchTimer.
It also seems that distributions like ubuntu are creating FDI policy 
files[1] for every touchscreen with its (default) Min/MaxX/Y values, and 
with driver evtouch. If evdev wants to replace evtouch it should allow 
an easy transition from evtouch (or any other driver) to evdev, no ?

> in the case of Calibration, I think is the better name - it does actually
> work differently to the MinX/Y.. options. The driver will still initialize
> with the defaults given to it by the kernel. The calibration merely serves
> to squash the actual coordinate range into the one obtained from the kernel.
> MinX/Y... etc. actually change the coordinate range the device and the
> server use.

So if I understand correctly, the difference is that evdevs 'Axis 
Valuators' are not changed when using a new calibration ? The dynapro 
driver did indeed do that, but the evtouch doesn't seem to do this 
either (just checked the valuator information with xinput list).


Greetings,
Tias

[1] https://bugs.launchpad.net/ubuntu/+source/xf86-input-evtouch/+bug/317094

> Cheers,
>   Peter
> _______________________________________________
> xorg mailing list
> xorg at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/xorg
> 



More information about the xorg mailing list