Re: Apple Trackpad driver

From: Huang Wen Hui <huanghwh_at_gmail.com>
Date: Fri, 31 Jan 2014 09:46:24 +0800
Hi Hans,

pos_x[] is not non-inialized,  it may be previous pos_x, it is still ok for
getting dx.
"n" var is trying to reduce "untouch" sensor data for post proccessing. I
attach a new patch
may be more clear, also fixed unexpected movement when button status or
ntouch changing.

Cheers,

Huang Wen Hui

2014-01-30 Hans Petter Selasky <hps_at_bitfrost.no>:

> Hi Huang,
>
>
> On 01/30/14 06:56, Huang Wen Hui wrote:
>
>> Hans,
>>
>> Thanks for you take care of it and commit it! I found two problems:
>>
>> 1. The selection is not expected when selection with 2 fingers sometimes.
>> 2.  Unexpected scrolling when Click with 2 fingers.
>>
>> This patch can fix that. The var "n" modify to "ntouch"  seems to be
>> necessary.
>>
>>
> Right, but aren't we then accessing non-initialised sc->pos_x[] data ?
>
> Because if ntouch == 2, n can be less than or equal to 2, due to continue
> in for-loop above. What is the purpose of the "n" variable?
>
> Can you explain?
>
> -               if (n == 2) {
> +               if (ntouch == 2) {
>                         sc->distance = max(sc->distance, max(
>                             abs(sc->pos_x[0] - sc->pos_x[1]),
>                             abs(sc->pos_y[0] - sc->pos_y[1])));
>
> --HPS
>
>
>> Cheers,
>> Huang Wen Hui
>>
>>
>> 2014-01-29 Hans Petter Selasky <hps_at_bitfrost.no>
>>
>>  On 01/29/14 09:49, Lundberg, Johannes wrote:
>>>
>>>  Hi
>>>>
>>>> I tested the driver on a 2012 Macbook Air 11" and it works great! Good
>>>> job!
>>>>
>>>> Is there a way to disable click-by-touch? I always preferred clicking
>>>> with
>>>> the physical button that is built in to the pad.
>>>>
>>>>
>>>>  Hi,
>>>
>>> I've added an "#if 0" around the 1 finger tap code until further. Maybe
>>> this feature can be tunable?
>>>
>>> I fixed the code style, added some range checks and cleared some buffer
>>> issues.
>>>
>>> When you assign a signed value to an unsigned variable, you should range
>>> check it, because the sign might cause an overflow when you use it later
>>> on.
>>>
>>> int8_t x = -1;
>>>
>>> uint32_t t = x;
>>>
>>> "t" is now "0xffffffffU" and not "255".
>>>
>>> Tested the code on my MacBookPro. Hope I didn't break anything. If so,
>>> send a patch to freebsd-usb.
>>>
>>> http://svnweb.freebsd.org/changeset/base/261260
>>>
>>> To get the touchpad working with Xorg, I needed to re-compile HALD with
>>> the attached patch.
>>>
>>> kwm: Can you get the attached patch into ports?
>>>
>>> Auto-loading of wsp via devd will be done later. Simply need to
>>> re-generate usb.conf in /etc ...
>>>
>>> --HPS
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> freebsd-current_at_freebsd.org mailing list
>>> http://lists.freebsd.org/mailman/listinfo/freebsd-current
>>> To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_
>>> freebsd.org"
>>>
>>
>

Received on Fri Jan 31 2014 - 00:46:27 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:46 UTC