HomeFreeBSD

MFC r317811:

Description

MFC r317811:

Fix triple-finger taps reported as double-finger for Elan hw v.4 touchpads

Wait for all advertised head packets after status packet have been received.
This fixes rare but quite annoying issue in Elan hw v.4 touchpads support
when triple-finger taps are reported as double-finger taps under several
circumstances.

MFC r317812:

Reduce default tap_min_queue size for Elan touchpads

Elan hw v.4 touchpads often sends touchpad release packet right after
touchpad touch one. Most probably this happens due to PS/2 limited bandwith.
Reducing of tap_min_queue size to 1 makes multifinger tap detection
more reliable in this case.

MFC r317813:

Adjust Elantech palm width threshold to nearly match synaptics defaults

MFC r317814:

psm(4): reduce cursor jumping on palm detection

This is done with discarding pointer movements rather then mouse packets

MFC r317815:

Enable palm detection on two finger touches for multitouch trackpads.

MFC r317816:

Report 3-rd and 4-th fingers as first finger for Elan hw v.2 and v.3 as
Linux does. It should not affect gesture processing in current state as it
ignores finger coords on 3-finger tap detection but it should make evdev
reports looking more Linux-alike.

MFC r317817:

Set predefined logical touchpad sizes for several ancient Elan hw v.2
models. This change is based on Linux driver.
Determine logical trace size. It used for calculation of touch sizes
in surface units for MT-protocol type B evdev reports.

MFC r317818:

psm(4): Remove sys/libkern.h header inclusion

It is already included via sys/systm.h

MFC r317819:

Reduce synaptics touch sensitivity

Increase hw.psm.synaptics.min_pressure default value from 16 to 32
to nearly match Linux driver (30-35 hysteresis loop).
This makes libinput tap detection more reliable.

Details

Provenance
wulfAuthored on
Parents
rS318499: MFC: r314345, r318276
Branches
Unknown
Tags
Unknown