History log of /src/sys/dev/pckbport/synaptics.c |
Revision | | Date | Author | Comments |
1.84 |
| 19-Jul-2024 |
mlelstv | hw.synaptics.aux_mid_button_scroll translates vertical movements of an aux device (like a trackpoint) into a scroll event when the middle mouse button is pressed.
Make this work with either the middle mouse button of the main device (buttonmask 0x02) or the middle mouse button of the aux device (buttonmask 0x40).
Fixes PR 58435.
|
1.83 |
| 18-Apr-2024 |
mlelstv | Renamed border/boundary variables to better describe their use. Fix edge default values, factor out percentage calculation for more consistent values. Use device_printf/DPRINTF to show errors instead of aprint variants. Print raw input for debugging.
Correct capability parsing. Old devices were probed with nonexistent commands and then used undefined boundary values that made them unusuable.
Fixes PR 57874.
|
1.82 |
| 05-Sep-2023 |
mrg | panic on an condition that shouldn't be possible.
appease GCC 12.
|
1.81 |
| 28-Sep-2022 |
nia | branches: 1.81.4; synaptics: Lower scale factor to give less sluggish mouse performance on modern displays.
|
1.80 |
| 17-Sep-2022 |
mlelstv | - synaptics_filter_policy no longer generates movements from stale data. - button boundary is now computed consistently. - multi finger operation now works for MULTI_FINGER and MULTI_FINGER_REPORT.
Fixes PR kern/56476 and probably kern/56998.
|
1.79 |
| 31-May-2022 |
andvar | fix various typos in comments, documentation and messages.
|
1.78 |
| 04-Apr-2022 |
blymn | Use the original right boundary when calculating the vertical scroll region so the boundary does not creep left on each subsequent setting. Thanks to Martin@ for the report.
|
1.77 |
| 01-Apr-2022 |
blymn | Fix regression introduced when fixing PR kern/56613 and related tweaks
* A trackpad with external buttons needs to mask a number of lower bits of the X and Y coordinates IFF a button is down. This was not being done so a button held down looked like an out of range packet and was therefore dropped.
* Now that trackpads are probed for their boundaries make the emulated button boundary settable by a percentage, also allow the right and bottom boundaries to be adjusted by a percentage to allow for horizontal and vertical scroll regions.
|
1.76 |
| 03-Mar-2022 |
blymn | Fix for PR kern/56613
* For trackpads that report max and min coordinates, retrieve these and use them as the boundaries instead of the hard coded limits. * Drop packets that are have x/y values that are outside the limits of the trackpad. Some trackpads report a stream of low values in some situations that cause cursor jumping.
|
1.75 |
| 04-Dec-2021 |
nia | synaptics: Fix tracking of extended buttons.
- Ensure that packets are processed whenever any button change occurs, instead of just processing packets when there is movement or trackpad finger activity - Only transfer the state of the "extended buttons" to the button masks when actual changes occur OR a button is being held down.
With this patch, my middle mouse button no longer gets "stuck down", but proper press/release tracking and dragging behavior is preserved.
Thanks to blymn for pointers.
|
1.74 |
| 03-Dec-2021 |
andvar | fix various typos in comments, log messages and documentation.
|
1.73 |
| 21-Oct-2021 |
blymn | Significant update to the synaptics touchpad driver.
* Accumulate packets for primary, secondary, finger count packets before handing off to pms_synaptics_process_packet. This means that both primary and, possibly, secondary finger locations will be processed at the same time. Previously the processing each packet as it arrived.
* Fix the secondary finger position reporting, there was an off by one in the shifts when decoding which effectively halved the reported position.
* For a clickpad, make the emulated button region "dead" so that finger movements in this region are ignored. This makes it easier to click a button without accidentally repositioning the cursor. There is a sysctl variable "button_region_movement_enable" that will allow these finger movements to be reported if this is desirable.
* Reset the finger ballistics when the number of fingers changes. This stops the annoying position jumps when a second finger touch is added to or removed from the touchpad.
* Add a level argument to the DPRINTF macro so one can choose their level of debug spam via the debug sysctl variable.
|
1.72 |
| 28-Sep-2021 |
nia | synaptics: use the new WSCONS_EVENT_(H|V)SCROLL event types to implement two-finger scrolling. remove non-functional code for detecting reported finger width.
|
1.71 |
| 30-May-2021 |
riastradh | synaptics(4): New sysctl knob for debug output.
Set hw.synaptics.debug=1 to re-enable it; the compile-time DIAGNOSTIC option was inappropriate for this.
|
1.70 |
| 01-Oct-2020 |
nia | branches: 1.70.6; 1.70.8; synaptics: Emulate scrolling when the middle button is held with TrackPoints
idea stolen from various other operating systems.
this configurable with a sysctl in case somebody wants to hold the middle button, e.g. with old window managers that close menus when a button is released.
|
1.69 |
| 01-Oct-2020 |
nia | erect a signpost for weary travellers
|
1.68 |
| 01-Oct-2020 |
nia | comment was likely true in 2007 but no longer reflects the reality of hw
|
1.67 |
| 14-May-2020 |
nia | synaptics: Don't reset the device multiple times in succession
Cherrypicked from a patch from an anonymous contributor.
|
1.66 |
| 28-Apr-2020 |
jmcneill | pms_synaptics_enable: no need to send PMS_DEV_ENABLE here because pms_enable does this for us. Seems to resolve issues with my trackpoint not working immediately after starting X on ThinkPad X260.
|
1.65 |
| 27-Apr-2020 |
jmcneill | Extended buttons are reported separate from touchpad buttons, so track button press / release state separate from touch events.
|
1.64 |
| 31-Mar-2020 |
nia | synaptics: Maintain the left/right buttons when up/down are remapped
Reported on current-users by Mandacarú Cascavel
|
1.63 |
| 27-Mar-2020 |
nia | synaptics: Revert changes that broke gestures in cases where they worked.
It seems I have to figure out another way to make scrolling work for me.
|
1.62 |
| 16-Mar-2020 |
nia | synaptics: Increase default scale_z for more precise scrolling
|
1.61 |
| 15-Mar-2020 |
nia | synaptics: Check for single-finger event jitter in all cases.
I now have smooth two-finger scrolling.
|
1.60 |
| 14-Mar-2020 |
nia | synaptics: Detect multiple fingers outside the gesture period
I suspect this code doesn't make any sense if we want two-finger scrolling
|
1.59 |
| 14-Mar-2020 |
nia | synaptics: Automatically scroll when multiple fingers are detected
This will mean we automatically get two-finger scrolling on multitouch pads.
This works, but the scrolling is janky. Why does it eventually move the mouse cursor (only one finger detected, but two are still there), and why does it jump up slightly?
|
1.58 |
| 14-Mar-2020 |
nia | synaptics: fix syntax
|
1.57 |
| 14-Mar-2020 |
nia | synaptics: Allow the max_speed sysctls to be set
|
1.56 |
| 14-Mar-2020 |
nia | synaptics: Set up_down_emulation=3 by default.
It's a less surprising default for modern hardware.
|
1.55 |
| 14-Mar-2020 |
nia | synaptics: Make up_down_emulation useful for single-button clickpads
On devices such as the Thinkpad X250, the clickpad can be pressed to generate mouse button events 1 and 2. There are also additional physical buttons which the pms(4) driver recognizes as "up/down" buttons (mouse buttons 3 and 4). Allow these to be remapped to buttons 1 and 2 and used like normal touchpad buttons with the following sysctl:
# sysctl -w hw.synaptics.up_down_emulation=3
While here, adjust the existing "middle button emulation" (hw.synaptics.up_down_emulation=1) so it works with single-button clickpads.
XXX: 3 may be a more useful default than the current default, depending on hardware availability of touchpads with "up/down buttons".
Update the documentation accordingly.
|
1.54 |
| 25-Feb-2020 |
ryoon | Messages in pms_synaptics_input() should not start with "pms_input"
Use "pms_synaptics_input" instead for another 2 messages.
|
1.53 |
| 25-Feb-2020 |
ryoon | Messages in pms_synaptics_input() should not start with "pms_input"
Use "pms_synaptics_input" instead.
|
1.52 |
| 25-Feb-2020 |
ryoon | Do not enter extended W mode conditional for non extended W mode device
Even without extended W mode, sp_w can be 2. This causes "invalid extended w mode N" warning messages. Restrict extended W mode conditional for hardwares with extended W support.
Tested with Synaptics 6.2 device on Panasonic CF-Y8, however it does not work with X.
|
1.51 |
| 25-Feb-2020 |
ryoon | Remove a trailing tab.
|
1.50 |
| 05-Jul-2019 |
mlelstv | branches: 1.50.2; 1.50.4; Resynchronizing the input stream could infinitely wait when the touchpad is in the wrong (relative) mode. The detection of relative mode is never reached.
Limit the resynchronization to 6 bytes, then trigger a reset.
|
1.49 |
| 02-Jun-2019 |
blymn | Changes based on code from an anonymous contributor. This should make trackpads work for Thinkpads. Also adds code to handle externally connected buttons (synaptics parlance), the first five are mapped to mouse buttons 1-5. The rest are currently not reported but could be decoded if required.
|
1.48 |
| 22-Apr-2019 |
blymn | Modify driver to use bits(3) to extract capabilities. Thanks to Anon Ymous for the fix.
|
1.47 |
| 21-Apr-2019 |
blymn | Fix minor comment nit.
|
1.46 |
| 04-Dec-2018 |
blymn | * Increase the default scaling of the two finger scroll to make it less sensitive * Fix range check for hw.synaptics.scale_z so it can be set with sysctl
|
1.45 |
| 28-Nov-2018 |
blymn | * Increase minimum finger width to prevent entering scroll mode erroneously * Attempt to clarify what the sysctl variables for finger scroll do * Add hysteresis to validity check so changing it does not get rejected
Thanks to Martin Husemann and Michael van Elst for reporting the issues.
|
1.44 |
| 06-Nov-2018 |
blymn | Add double finger scroll feature. If the detected width is between a defined range then report y movement as z-axis. Effectively emulating a mouse scroll wheel.
|
1.43 |
| 06-Nov-2018 |
blymn | Fix clamping of deltas so it works for both positive and negative deltas.
|
1.42 |
| 14-Jul-2018 |
maya | Send the 'magic reverse engineered sequence' with a single sliced command, don't wait for individual ACKs. Fixes kern/53444.
While here: - use better descriptive names for functions - use a function for the extended write command - add macro for number from the old synaptics documentation - don't get the resp from the command sequence if we're going to ignore it anyway
most from uwe.
|
1.41 |
| 03-Jun-2018 |
christos | branches: 1.41.2; restore \n printing.
|
1.40 |
| 03-Jun-2018 |
christos | use a more data-driven :-) approach to avoid cut-n-pasted code.
|
1.39 |
| 03-Jun-2018 |
ryoon | Enable Synaptics multifinger capability (Extended W mode)
Magic parameters are taken from https://github.com/RehabMan/OS-X-Voodoo-PS2-Controller/. Tested on HP ProBook 4630s, Lenovo E530, VAIO Pro 11 and HP Spectre x360 ae.
|
1.38 |
| 30-May-2018 |
ryoon | Remove double and trailing whitespaces
|
1.37 |
| 29-May-2018 |
ryoon | Remove trailing tab
|
1.36 |
| 05-Dec-2017 |
jmcneill | branches: 1.36.2; Add hw.synaptics.movement_enable sysctl. Default value is 1, but if set to 0 disables movement events from the touchpad.
While here, fixup a few sysctl nodenum comparisons in pms_sysctl_synaptics_verify to compare against node numbers instead of values.
|
1.35 |
| 07-Nov-2017 |
ryoon | Return res in non-synaptics case like before. Fix ALPS case
|
1.34 |
| 06-Nov-2017 |
blymn | Add two finger support and middle/right button emulation.
|
1.33 |
| 04-Mar-2015 |
christos | Fix clickpad button detection (From Rhialto)
|
1.32 |
| 23-May-2014 |
christos | branches: 1.32.2; 1.32.4; PR/48831: J�rg Grundmann: Synaptics Touch pad (ClickPad) and Klick-by-tap-gestures do not work
|
1.31 |
| 25-Feb-2014 |
pooka | branches: 1.31.2; Ensure that the top level sysctl nodes (kern, vfs, net, ...) exist before the sysctl link sets are processed, and remove redundancy.
Shaves >13kB off of an amd64 GENERIC, not to mention >1k duplicate lines of code.
|
1.30 |
| 03-Jun-2012 |
dsl | branches: 1.30.2; 1.30.4; Remove a couple of (void *) casts added in the previous commin. They aren't needed here (script error).
|
1.29 |
| 02-Jun-2012 |
dsl | Add some pre-processor magic to verify that the type of the data item passed to sysctl_createv() actually matches the declared type for the item itself. In the places where the caller specifies a function and a structure address (typically the 'softc') an explicit (void *) cast is now needed. Fixes bugs in sys/dev/acpi/asus_acpi.c sys/dev/bluetooth/bcsp.c sys/kern/vfs_bio.c sys/miscfs/syncfs/sync_subr.c and setting AcpiGbl_EnableAmlDebugObject. (mostly passing the address of a uint64_t when typed as CTLTYPE_INT). I've test built quite a few kernels, but there may be some unfixed MD fallout. Most likely passing &char[] to char *. Also add CTLFLAG_UNSIGNED for unsiged decimals - not set yet.
|
1.28 |
| 10-Sep-2011 |
jakllsch | branches: 1.28.2; Correct and improve some comments. Collect unused variables. Add a define.
|
1.27 |
| 09-Sep-2011 |
jakllsch | Replace pms_synaptics_send_command() and identical pms_elantech_send_command() with pms_sliced_command(). Linux shows that this sequence can also be used by "Logitech PS/2++" protocol as well.
|
1.26 |
| 29-Jan-2011 |
cegger | use aprint_debug_dev and get rid of SYNAPTICSDEBUG
|
1.25 |
| 15-Nov-2010 |
uebayasi | branches: 1.25.2; 1.25.4; wakeup needs sys/proc.h.
|
1.24 |
| 21-Mar-2010 |
plunky | send the SET_SCALE11 command before the 'sliced' command as per the Linux driver (and elantech(4)), via PR kern/42853
|
1.23 |
| 21-Mar-2010 |
plunky | Extended capability probes can confuse the passthrough device, reset the touchpad on enable to cure that.
|
1.22 |
| 21-Mar-2010 |
plunky | some definitions from the Linux driver (via PR kern/42853)
|
1.21 |
| 30-Apr-2008 |
ad | branches: 1.21.10; 1.21.20; 1.21.22; Make various bits of debug code compile again.
|
1.20 |
| 15-Mar-2008 |
cube | branches: 1.20.2; 1.20.4; Split device_t and softc for pckbd(4) and pms(4).
|
1.19 |
| 28-Jan-2008 |
jmcneill | branches: 1.19.2; 1.19.6; Change synaptics 'unusual delay' printf to aprint_debug. I'm tired of seeing it over and over again.
|
1.18 |
| 28-Jan-2008 |
jmcneill | De-noisify resume handler.
|
1.17 |
| 11-Dec-2007 |
lukem | use __KERNEL_RCSID()
|
1.16 |
| 19-Oct-2007 |
ad | branches: 1.16.2; 1.16.4; 1.16.6; 1.16.8; machine/{bus,cpu,intr}.h -> sys/{bus,cpu,intr}.h
|
1.15 |
| 25-Mar-2007 |
mlelstv | branches: 1.15.8; 1.15.10; 1.15.14; add missing W coordinate
|
1.14 |
| 25-Mar-2007 |
mlelstv | Handle events from passthrough devices like the Thinkpad 'Navistick'.
|
1.13 |
| 16-Nov-2006 |
christos | branches: 1.13.2; 1.13.4; 1.13.8; 1.13.10; 1.13.12; __unused removal on arguments; approved by core.
|
1.12 |
| 12-Nov-2006 |
plunky | Tidy away wsmouse_input() abstractions and update documentation to include the W direction.
|
1.11 |
| 12-Oct-2006 |
christos | - sprinkle __unused on function decls. - fix a couple of unused bugs - no more -Wno-unused for i386
|
1.10 |
| 07-Jun-2006 |
kardel | branches: 1.10.6; 1.10.8; merge FreeBSD timecounters from branch simonb-timecounters - struct timeval time is gone time.tv_sec -> time_second - struct timeval mono_time is gone mono_time.tv_sec -> time_uptime - access to time via {get,}{micro,nano,bin}time() get* versions are fast but less precise - support NTP nanokernel implementation (NTP API 4) - further reading: Timecounter Paper: http://phk.freebsd.dk/pubs/timecounter.pdf NTP Nanokernel: http://www.eecis.udel.edu/~mills/ntp/html/kern.html
|
1.9 |
| 24-Dec-2005 |
perry | branches: 1.9.4; 1.9.6; 1.9.8; 1.9.14; Remove leading __ from __(const|inline|signed|volatile) -- it is obsolete.
|
1.8 |
| 11-Dec-2005 |
christos | merge ktrace-lwp.
|
1.7 |
| 26-Oct-2005 |
rpaulo | s/SYNAPTICS_DEBUG/SYNAPTICSDEBUG/ to keep consistency.
|
1.6 |
| 20-Jun-2005 |
atatat | branches: 1.6.2; 1.6.4; Change the rest of the sysctl subsystem to use const consistently. The __UNCONST macro is now used only where necessary and the RW macros are gone. Most of the changes here are consumers of the sysctl_createv(9) interface that now takes a pair of const pointers which used not to be.
|
1.5 |
| 27-Feb-2005 |
perry | nuke trailing whitespace
|
1.4 |
| 18-Jan-2005 |
scw | branches: 1.4.2; Address PR kern/28990 by making Synaptics Touchpad support contingent on "options PMS_SYNAPTICS_TOUCHPAD" in the kernel config file. See the PR for details on why this is necessary.
While here, defflag PMS_DISABLE_POWERHOOK.
|
1.3 |
| 02-Jan-2005 |
scw | branches: 1.3.2; 1.3.4; Major re-write of the recently-committed Synaptics Touchpad driver, prompted by jittery and/or random movement during tap gestures, lack of edge motion, and a general desire to make use of the extra features available with the native protocol.
- Ditch the kernel thread; it was overkill for the small amount of processing required to deal with touchpad events.
- If we fail to probe a Synaptics touchpad, issue a RESET command to ensure that whatever device is out there is left in a sane state (thanks to Reinoud Zandijk for the hint).
- Completely re-write gesture support.
- Put the touchpad in 80 packets per second mode and count them so they can be used to time gesture durations (instead of using mono_time).
- Enhance up/down button support with options to use them to emulate the middle button or Z-axis events (like a traditional wheel mouse).
- Add 'edge motion'. If a drag gesture is in progress, and the reported finger position moves to the touchpad's border region, continue to report movement events at a fixed rate as if the finger carried on moving in the same direction. This restores some functionality usually provided by the touchpad's firmware in PS/2 mode.
- Filter successive movement events to reduce jitter. When scaling movement events, fold the remainder into the next event to prevent loss of information during slow/small finger movements. Pointer movement is now much more refined.
- Add support for touchpads which can report more than one finger on the pad simultaneously. Optionally use this feature for middle/right button emulation (i.e. tap two fingers to emulate middle button). This feature is disabled by default (for now) to avoid surprise pasting of clipboard text. ;-)
|
1.2 |
| 28-Dec-2004 |
christos | - cleanup some debugging stuff. - don't create the sysctl nodes if we don't have a synaptics pad.
|
1.1 |
| 24-Dec-2004 |
christos | PR/28774: Kentaro A. Kurahone: Add synaptics touchpad driver
|
1.3.4.5 |
| 10-Nov-2005 |
skrll | Sync with HEAD. Here we go again...
|
1.3.4.4 |
| 04-Mar-2005 |
skrll | Sync with HEAD.
Hi Perry!
|
1.3.4.3 |
| 24-Jan-2005 |
skrll | Sync with HEAD.
|
1.3.4.2 |
| 17-Jan-2005 |
skrll | Sync with HEAD.
|
1.3.4.1 |
| 02-Jan-2005 |
skrll | file synaptics.c was added on branch ktrace-lwp on 2005-01-17 19:31:51 +0000
|
1.3.2.1 |
| 29-Apr-2005 |
kent | sync with -current
|
1.4.2.1 |
| 19-Mar-2005 |
yamt | sync with head. xen and whitespace. xen part is not finished.
|
1.6.4.1 |
| 02-Nov-2005 |
yamt | sync with head.
|
1.6.2.7 |
| 17-Mar-2008 |
yamt | sync with head.
|
1.6.2.6 |
| 04-Feb-2008 |
yamt | sync with head.
|
1.6.2.5 |
| 21-Jan-2008 |
yamt | sync with head
|
1.6.2.4 |
| 27-Oct-2007 |
yamt | sync with head.
|
1.6.2.3 |
| 03-Sep-2007 |
yamt | sync with head.
|
1.6.2.2 |
| 30-Dec-2006 |
yamt | sync with head.
|
1.6.2.1 |
| 21-Jun-2006 |
yamt | sync with head.
|
1.9.14.1 |
| 19-Jun-2006 |
chap | Sync with head.
|
1.9.8.1 |
| 26-Jun-2006 |
yamt | sync with head.
|
1.9.6.2 |
| 24-Apr-2006 |
kardel | remove int s; (for spl level) as time counter conversion makes that obsolete.
|
1.9.6.1 |
| 04-Feb-2006 |
simonb | Adapt for timecounters: mostly use get*time() and use "time_second" instead of "time.tv_sec".
|
1.9.4.1 |
| 09-Sep-2006 |
rpaulo | sync with head
|
1.10.8.2 |
| 10-Dec-2006 |
yamt | sync with head.
|
1.10.8.1 |
| 22-Oct-2006 |
yamt | sync with head
|
1.10.6.1 |
| 18-Nov-2006 |
ad | Sync with head.
|
1.13.12.1 |
| 29-Mar-2007 |
reinoud | Pullup to -current
|
1.13.10.1 |
| 11-Jul-2007 |
mjf | Sync with head.
|
1.13.8.2 |
| 23-Oct-2007 |
ad | Sync with head.
|
1.13.8.1 |
| 10-Apr-2007 |
ad | Sync with head.
|
1.13.4.1 |
| 15-Apr-2007 |
yamt | sync with head.
|
1.13.2.1 |
| 01-Apr-2007 |
bouyer | Pull up following revision(s) (requested by mlelstv in ticket #550): sys/dev/pckbport/synaptics.c: revisions 1.14, 1.15 Handle events from passthrough devices like the Thinkpad 'Navistick'. add missing W coordinate
|
1.15.14.1 |
| 25-Oct-2007 |
bouyer | Sync with HEAD.
|
1.15.10.3 |
| 23-Mar-2008 |
matt | sync with HEAD
|
1.15.10.2 |
| 09-Jan-2008 |
matt | sync with HEAD
|
1.15.10.1 |
| 06-Nov-2007 |
matt | sync with HEAD
|
1.15.8.1 |
| 26-Oct-2007 |
joerg | Sync with HEAD.
Follow the merge of pmap.c on i386 and amd64 and move pmap_init_tmp_pgtbl into arch/x86/x86/pmap.c. Modify the ACPI wakeup code to restore CR4 before jumping back into kernel space as the large page option might cover that.
|
1.16.8.1 |
| 13-Dec-2007 |
bouyer | Sync with HEAD
|
1.16.6.1 |
| 11-Dec-2007 |
yamt | sync with head.
|
1.16.4.1 |
| 26-Dec-2007 |
ad | Sync with head.
|
1.16.2.1 |
| 18-Feb-2008 |
mjf | Sync with HEAD.
|
1.19.6.2 |
| 02-Jun-2008 |
mjf | Sync with HEAD.
|
1.19.6.1 |
| 03-Apr-2008 |
mjf | Sync with HEAD.
|
1.19.2.1 |
| 24-Mar-2008 |
keiichi | sync with head.
|
1.20.4.2 |
| 11-Aug-2010 |
yamt | sync with head.
|
1.20.4.1 |
| 16-May-2008 |
yamt | sync with head.
|
1.20.2.1 |
| 18-May-2008 |
yamt | sync with head.
|
1.21.22.2 |
| 05-Mar-2011 |
rmind | sync with head
|
1.21.22.1 |
| 30-May-2010 |
rmind | sync with head
|
1.21.20.1 |
| 30-Apr-2010 |
uebayasi | Sync with HEAD.
|
1.21.10.1 |
| 20-Nov-2010 |
riz | Pull up following revision(s) (requested by plunky in ticket #1383): sys/dev/pckbport/synapticsreg.h: revision 1.6 sys/dev/pckbport/synaptics.c: revision 1.22 sys/dev/pckbport/synaptics.c: revision 1.23 sys/dev/pckbport/synaptics.c: revision 1.24 some definitions from the Linux driver (via PR kern/42853) Extended capability probes can confuse the passthrough device, reset the touchpad on enable to cure that. send the SET_SCALE11 command before the 'sliced' command as per the Linux driver (and elantech(4)), via PR kern/42853
|
1.25.4.1 |
| 08-Feb-2011 |
bouyer | Sync with HEAD
|
1.25.2.1 |
| 06-Jun-2011 |
jruoho | Sync with HEAD.
|
1.28.2.1 |
| 22-May-2014 |
yamt | sync with head.
for a reference, the tree before this commit was tagged as yamt-pagecache-tag8.
this commit was splitted into small chunks to avoid a limitation of cvs. ("Protocol error: too many arguments")
|
1.30.4.1 |
| 18-May-2014 |
rmind | sync with head
|
1.30.2.2 |
| 03-Dec-2017 |
jdolecek | update from HEAD
|
1.30.2.1 |
| 20-Aug-2014 |
tls | Rebase to HEAD as of a few days ago.
|
1.31.2.1 |
| 10-Aug-2014 |
tls | Rebase.
|
1.32.4.1 |
| 06-Apr-2015 |
skrll | Sync with HEAD
|
1.32.2.1 |
| 21-Mar-2015 |
snj | Pull up following revision(s) (requested by nonaka in ticket #629): sys/dev/pckbport/synaptics.c: revision 1.33 Fix clickpad button detection (From Rhialto)
|
1.36.2.4 |
| 26-Dec-2018 |
pgoyette | Sync with HEAD, resolve a few conflicts
|
1.36.2.3 |
| 26-Nov-2018 |
pgoyette | Sync with HEAD, resolve a couple of conflicts
|
1.36.2.2 |
| 28-Jul-2018 |
pgoyette | Sync with HEAD
|
1.36.2.1 |
| 25-Jun-2018 |
pgoyette | Sync with HEAD
|
1.41.2.2 |
| 13-Apr-2020 |
martin | Mostly merge changes from HEAD upto 20200411
|
1.41.2.1 |
| 10-Jun-2019 |
christos | Sync with HEAD
|
1.50.4.1 |
| 29-Feb-2020 |
ad | Sync with head.
|
1.50.2.8 |
| 30-Dec-2021 |
martin | Pull up following revision(s) (requested by riastradh in ticket #1397):
sys/dev/pckbport/synaptics.c: revision 1.71
synaptics(4): New sysctl knob for debug output.
Set hw.synaptics.debug=1 to re-enable it; the compile-time DIAGNOSTIC option was inappropriate for this.
|
1.50.2.7 |
| 08-Oct-2020 |
martin | Pull up following revision(s) (requested by nia in ticket #1100):
sys/dev/pckbport/synaptics.c: revision 1.69 sys/dev/pckbport/synaptics.c: revision 1.70 share/man/man4/pms.4: revision 1.38
erect a signpost for weary travellers
synaptics: Emulate scrolling when the middle button is held with TrackPoints idea stolen from various other operating systems.
this configurable with a sysctl in case somebody wants to hold the middle button, e.g. with old window managers that close menus when a button is released.
|
1.50.2.6 |
| 20-Jun-2020 |
martin | Pull up following revision(s) (requested by nia in ticket #954):
sys/dev/pckbport/synaptics.c: revision 1.67
synaptics: Don't reset the device multiple times in succession Cherrypicked from a patch from an anonymous contributor.
|
1.50.2.5 |
| 29-Apr-2020 |
martin | Pull up following revision(s) (requested by jmcneill in ticket #865):
sys/dev/pckbport/synaptics.c: revision 1.66
pms_synaptics_enable: no need to send PMS_DEV_ENABLE here because pms_enable does this for us. Seems to resolve issues with my trackpoint not working immediately after starting X on ThinkPad X260.
|
1.50.2.4 |
| 28-Apr-2020 |
martin | Pull up following revision(s) (requested by jmcneill in ticket #863):
sys/dev/pckbport/synaptics.c: revision 1.65 sys/dev/pckbport/synapticsvar.h: revision 1.10
Extended buttons are reported separate from touchpad buttons, so track button press / release state separate from touch events.
|
1.50.2.3 |
| 02-Apr-2020 |
martin | Pull up following revision(s) (requested by nia in ticket #818):
sys/dev/pckbport/synaptics.c: revision 1.64
synaptics: Maintain the left/right buttons when up/down are remapped Reported on current-users by Mandacar� Cascavel
|
1.50.2.2 |
| 30-Mar-2020 |
martin | Pull up following revision(s) (requested by nia in ticket #810):
sys/dev/pckbport/synaptics.c: revision 1.57 sys/dev/pckbport/synaptics.c: revision 1.58
synaptics: Allow the max_speed sysctls to be set synaptics: fix syntax
|
1.50.2.1 |
| 30-Mar-2020 |
martin | Pull up following revision(s) (requested by nia in ticket #809):
sys/dev/pckbport/synaptics.c: revision 1.55 sys/dev/pckbport/synaptics.c: revision 1.56 share/man/man4/pms.4: revision 1.35 share/man/man4/pms.4: revision 1.36
synaptics: Make up_down_emulation useful for single-button clickpads
On devices such as the Thinkpad X250, the clickpad can be pressed to generate mouse button events 1 and 2. There are also additional physical buttons which the pms(4) driver recognizes as "up/down" buttons (mouse buttons 3 and 4). Allow these to be remapped to buttons 1 and 2 and used like normal touchpad buttons with the following sysctl:
While here, adjust the existing "middle button emulation" (hw.synaptics.up_down_emulation=1) so it works with single-button clickpads.
XXX: 3 may be a more useful default than the current default, depending on hardware availability of touchpads with "up/down buttons".
Update the documentation accordingly.
synaptics: Set up_down_emulation=3 by default.
It's a less surprising default for modern hardware.
|
1.70.8.1 |
| 31-May-2021 |
cjep | sync with head
|
1.70.6.1 |
| 17-Jun-2021 |
thorpej | Sync w/ HEAD.
|
1.81.4.1 |
| 22-Jun-2024 |
martin | Pull up following revision(s) (requested by gutteridge in ticket #718):
sys/dev/pckbport/synaptics.c: revision 1.83
Renamed border/boundary variables to better describe their use.
Fix edge default values, factor out percentage calculation for more consistent values. Use device_printf/DPRINTF to show errors instead of aprint variants.
Print raw input for debugging.
Correct capability parsing. Old devices were probed with nonexistent commands and then used undefined boundary values that made them unusuable.
Fixes PR 57874.
|