I noticed that the elantech driver reports totally wrong axis range
values to the xf86-input-synaptics driver for the touchpad in my Samsung
N145 Plus netbook.
kernel output:
elantech: assuming hardware version 2, firmware version 4.2.22
elantech: Synaptics capabilities query result 0x09, 0x14, 0x0b.
As it's detected as hardware version 2 the hardcoded ranges from
elantech.h are used:
[ 16.863] (--) ETPS/2 Elantech Touchpad: x-axis range 8 - 1144
[ 16.863] (--) ETPS/2 Elantech Touchpad: y-axis range 8 - 760
But with synclient's monitor mode I discovered that the correct values
for my touchpad seem to be:
min x: 0
max x: 819
min y: 355
max y: 760
(without ETP_EDGE_FUZZ_V2)
This results in unusuable edge areas by default.
When using more then one finger on the touchpad also sometimes this
strange thing happens and the cursor jumps:
time x y z f w l r u d m multi gl gm gr gdx gdy
155.600 1020 -268 31 2 0 0 0 0 0 0 00000000
155.610 1020 -268 0 0 0 0 0 0 0 0 00000000
(the second line is optional)
I guess this would have no effect (like jumping cursor) with correct
ranges. Can't they be queried from hardware? I have no clue if these
ranges I figured out are valid for my netbook only or if there was a
general change in newer firmware versions. Unfortunately, I own no other
hardware for figuring this out. I could patch the driver for my personal
need, but I think this should by handled somehow in the driver
automatically. If that would not work adequate I would suggest to
introduce driver parameters to pass the ranges at runtime without the
need for recompiling.
--
Regards,
Richard Schütz
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html