Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 2 Jun 2019 17:13:11 +0300
From:      Andrey Kosachenko <andrey.kosachenko@gmail.com>
To:        Vladimir Kondratyev <vladimir@kondratyev.su>
Cc:        freebsd-drivers@freebsd.org, FreeBSD X11 mailing list <freebsd-x11@freebsd.org>
Subject:   Re: Thinkpad t480s elantech touchpad device is not recognized: unknown touchpad firmware (firmware v.0x7f3001)
Message-ID:  <59e3fe9f-e81a-3236-43e4-110a2730cd02@gmail.com>
In-Reply-To: <de2f55b6-fd86-194a-f431-8b2b775f1b11@kondratyev.su>
References:  <5f4e1f25-8c87-5fa5-1d7f-edbde63fde6e@gmail.com> <a179dbc9-3907-8c3d-c369-dd829896393b@gjunka.com> <279a4144-43d3-6921-2047-e7877bfd721d@kondratyev.su> <de2f55b6-fd86-194a-f431-8b2b775f1b11@kondratyev.su>

next in thread | previous in thread | raw e-mail | index | archive | help
Hi Vladimir,

sorry for a delay (was not able to catch up on email for several days)

first of all thanks for your time/efforts!

Regarding the patch:
1) the kernel compiles OK, no side-effects/regressions were observed (in 
the course of brief manual testing of clickpad/trackpoint)

2) the behavior of trackpoint has changed. In particular it is the 
following:
- no pointer "flickering" is observed anymore and it stands still once 
one just touches it (previously it used to flicker for a few fractions 
of seconds after one touches it and then pointer was moved exactly to 
the left upper screen corner and it was not possible to move it anymore 
by means of a trackpoint. I.e. one could manipulate pointer only via 
either externally connected mouse or via swiping touchpad (or it seems 
the proper term for it clickpad since it's bottom area "clicks" when one 
presses it).

- pointer can be manipulated via a trackpoint. However  it's behavior is 
quite weird. In particlular:
    * pointer can be moved up/down and right left;
    * pointer can be moved north-east (up-right) and south-west(down-left)
    * on attempts to move pointer either north-west (up-left) or 
south-east (down-right) it remains motionless.


not sure if I have to blame hardware. Because a month ago when I 
received a device (it was supplied with Win10 system) worked as 
expected. Right now I can't prove that again because Win10 was erased 
unused OS to leave more space on disk.

just in case mentioning relevant sysctl settings:

===
[silent@beastie][/home/silent]sysctl hw.psm
hw.psm.elantech.softbutton3_x: 1709
hw.psm.elantech.softbutton2_x: 1342
hw.psm.elantech.softbuttons_y: 472
hw.psm.elantech.touchpad_off: 0
hw.psm.elantech.vscroll_div_max: 50
hw.psm.elantech.vscroll_div_min: 30
hw.psm.elantech.vscroll_min_delta: 15
hw.psm.elantech.vscroll_ver_area: 0
hw.psm.elantech.vscroll_hor_area: 0
hw.psm.elantech.taphold_timeout: 125000
hw.psm.elantech.tap_min_queue: 1
hw.psm.elantech.tap_max_delta: 25
hw.psm.elantech.div_len: 30
hw.psm.elantech.div_max_na: 10
hw.psm.elantech.div_max: 6
hw.psm.elantech.div_min: 3
hw.psm.elantech.weight_len_squared: 200
hw.psm.elantech.weight_previous_na: 20
hw.psm.elantech.weight_previous: 6
hw.psm.elantech.weight_current: 3
hw.psm.elantech.multiplicator: 10000
hw.psm.elantech.window_max: 10
hw.psm.elantech.window_min: 4
hw.psm.elantech.na_left: 0
hw.psm.elantech.na_bottom: 0
hw.psm.elantech.na_right: 0
hw.psm.elantech.na_top: 0
hw.psm.elantech.margin_left: 0
hw.psm.elantech.margin_bottom: 0
hw.psm.elantech.margin_right: 0
hw.psm.elantech.margin_top: 0
hw.psm.elantech.max_width: 7
hw.psm.elantech.max_pressure: 220
hw.psm.elantech.min_pressure: 1
hw.psm.elantech.two_finger_scroll: 1
hw.psm.elantech.max_y: 1888
hw.psm.elantech.max_x: 3052
hw.psm.elantech.directional_scrolls: 0
hw.psm.elantech_support: 1
hw.psm.trackpoint_support: 1
hw.psm.synaptics_support: 0
hw.psm.tap_timeout: 125000
hw.psm.tap_threshold: 25
hw.psm.tap_enabled: -1
===


3) this one has probably nothing to do with the clickpad driver: those 
errors in Xorg.log still persist when one puts the palm on a touchpad. I.e.:

===
[  1561.372] (EE) event3  - ETPS/2 Elantech Touchpad: kernel bug: Touch 
jump detected and discarded.
See 
https://wayland.freedesktop.org/libinput/doc/1.12.6/touchpad-jumping-cursors.html 
for details
[  1561.372] (EE) event3  - ETPS/2 Elantech Touchpad: kernel bug: Touch 
jump detected and discarded.
See 
https://wayland.freedesktop.org/libinput/doc/1.12.6/touchpad-jumping-cursors.html 
for details
===

Vladimir Kondratyev wrote:
> On 30.05.2019 01:17, Vladimir Kondratyev wrote:
>> I.e. after that simple modification system started to recognize fw
>>>> version:
>>>>
>>>> ===
>>>> [silent@beastie][/usr/src]dmesg | egrep psm
>>>> psm0: <PS/2 Mouse> irq 12 on atkbdc0
>>>> psm0: [GIANT-LOCKED]
>>>> psm0: model Elantech Touchpad, device ID 0
>>>> ===
>>>>
>>>> and all expected touchpad features (multi-tap gestures and scrolling,
>>>> whatsoever) started to function properly under xorg+evdev. I'm happy
>>>> with a touchpad now however trackpoint stopped to work. In particular
>>>> attempt to use trackpoint causes strange flickering of the mice
>>>> cursor (which lasts few fractions of the second) after which cursor
>>>> jumps to the left-upper corner of the screen and it's impossible to
>>>> move it (via trackpoint) anymore (though swiping touchpad surface
>>>> moves cursor as expected). Also I found in Xorg.log messages emerging
>>>> when a palm touches the surface of a touchpad:
>> Andrey, please fill bugzilla PR and send me link to it. I believe
>> Elantech's trackpoint support has never been tested yet.
>>
> Hi Andrey,
> 
> Could you try attached patch? It is only compile-tested.
> 
> 




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?59e3fe9f-e81a-3236-43e4-110a2730cd02>