Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

heads up: changes to synaptics trackpad driver



Folks,

I have just committed some changes to the synaptics driver to fix a
problem that some people were seeing where the cursor would skip badly.
I have added bounds checking to the driver and it drops out of range
packets.  As an adjunct to this I have added code that, for trackpads
that support it, will query the trackpad for the max and min coordinates
and use these values as the limits.  Previously the bounds of the
trackpad were some hard coded numbers pulled from a synaptics document.

My trackpad report looks like this now:

[     1.053573] pms0 at pckbc1 (aux slot)
[     1.053573] pms0: Synaptics touchpad version 8.1
[     1.053573] pms0: Extended W mode, Passthrough, Palm detect, One button click pad, Multi-finger Report, Multi-finger, Reports max, Reports min
[     1.053573] pms0: Probed max coordinates right: 5680, top: 4730
[     1.053573] pms0: Probed min coordinates left: 1354, bottom: 1280
[     1.053573] wsmouse0 at pms0 mux 0

Note the "Reports max" and "Reports min" in the capabilities, if these
are reported you should see the probed numbers for the trackpad.

Don't worry if you don't see this, the driver will use the defaults as
it did before.

There is a chance that some people will now find a "dead" border on
their trackpad in the situation where the probed/default boundary does
not match what the trackpad can report.  In this can these numbers can
be overridden by using sysctl and updating the following values:

hw.synaptics.edge_left = 1354
hw.synaptics.edge_right = 5680
hw.synaptics.edge_top = 4730
hw.synaptics.edge_bottom = 1280

Modify these numbers to eliminate the dead border, they can be updated
live so the change is easy to test.  Take care not to set the left or
bottom numbers too low otherwise your pointer may skip.  These numbers
are mostly only used for the boundary checking so they don't have to be
absolutely accurate.  You can make the changes apply on reboot by adding
the settings to /etc/sysctl.conf.

-- 
Brett Lymn
--
Sent from my NetBSD device.

"We are were wolves",
"You mean werewolves?",
"No we were wolves, now we are something else entirely",
"Oh"


Home | Main Index | Thread Index | Old Index