Questions about synaptics coordinate

Leon Shaw shaw.leon at gmail.com
Fri Mar 30 06:45:14 PDT 2012


Hi,

Actually I'm seeking a way to rotate my touchpad, and found the
previous mailing thread:
[PATCH synaptics] Add synaptics orientation support
Is this feature already implemented elsewhere now? Or is there any
plan to add it to synaptics driver?

Thanks,
Leon

On Fri, Mar 30, 2012 at 6:48 AM, Peter Hutterer
<peter.hutterer at who-t.net> wrote:
> On Thu, Mar 29, 2012 at 08:47:33PM +0800, Leon Shaw wrote:
>> Thanks for you explanation. So we don't have a way to get the actual
>> bezel limit, and the only reliable limit is 0x0000–0x17FF (according
>> to "Synaptics PS/2 TouchPad Interfacing Guide"). Is that right?
>
> yes, that's how I understood it. bit of a bummer, could be worked around in
> the code since it's always the same value anyway (afaict). but I only
> noticed this a few weeks back when I was debugging something else.
>
> Cheers,
>  Peter
>
>
>> On Thu, Mar 29, 2012 at 2:39 PM, Peter Hutterer
>> <peter.hutterer at who-t.net> wrote:
>> > On Tue, Mar 27, 2012 at 12:38:01PM +0800, Leon Shaw wrote:
>> >> Hi Peter,
>> >>
>> >> I looked into eventcomm.c and got confused.
>> >>
>> >> 1. Shouldn't apply_st_scaling be something like:
>> >> (value - st_min[axis]) * proto_data->st_to_mt_scale[axis] + priv->minx_or_y;
>> >> instead of
>> >> value * proto_data->st_to_mt_scale[axis] + proto_data->st_to_mt_offset[axis];
>> >> since st_min is normally not 0?
>> >
>> > yes, you're right, this appears to be broken. Can you submit a patch please?
>> > rename the st_to_mt_offset to st_min since we don't seem to need it
>> > elsewhere.
>> >
>> >> 2. My device seems reporting coordinates beyond minimum and maximum
>> >> value in priv when I touch the edges. Is there some thing wrong?
>> >
>> > no, that's a synaptics "feature". the ranges the device reports are the
>> > ones seen from a "default" finger, if your finger is larger or smaller, the
>> > actual ranges you can trigger on the device are different. bit of a pain,
>> > the main problem is that the driver assumes these ranges to be something
>> > else and features have piled up on this misunderstanding for years. it'll
>> > take a while to get rid of this.
>> >
>> > Cheers,
>> >  Peter
>>


More information about the xorg-devel mailing list