git: cyapa - Add Intellimouse support (mousewheel) - right side slider

Matthew Dillon dillon at
Wed Jan 8 21:20:50 PST 2014

commit 95eb6bee9233cb946126f9402e4cc41cfc282510
Author: Matthew Dillon <dillon at>
Date:   Wed Jan 8 21:01:43 2014 -0800

    cyapa - Add Intellimouse support (mousewheel) - right side slider
    * Adds emulation of a mouse wheel.  The driver is still ps/2 compatible
      but if you want a mousewheel specify the "imps/2" protocol.
        Section "InputDevice"
    	    Identifier  "Mouse0"
    	    Driver      "mouse"
    	    Option      "Protocol" "imps/2"
        #       Option      "Protocol" "ps/2"
    	    Option      "Device" "/dev/cyapa0-67"
    * The mousewheel is emulated by touching the rightmost border of the
      trackpad with a single finger and sliding your finger up or down.
    * Any button push with two fingers down will now ALWAYS emulate the
      left mouse button, even if you haven't moved the mouse.
      - Supports right-side slider if "imps/2" protocol is used.
      - Emulates middle and right buttons if you push the trackpad button
        from the left, middle, or right side of the pad with one finger.
      - Trackpad button is always the 'left' button if you press it with
        two fingers.
      - You can also get the 'left' button with three fingers (try shifting
        the mouse around with two fingers and then tap a third finger), without
        actually articulating the trackpad button.  This is VERY convenient.
      - Has jitter supression.
      - True tracking for X and Y.  Within reason (X will drop deltas despite
        our best efforts), shifting your finger around the pad will not lose
        deltas, meaning that you can shift around and when you return your finger
        to where you started, the mouse should be where it started too.
      - Multi-finger delta handling.  This is not reported to X, but the driver
        tracks which finger touched first and delta tracking will be based on
        that finger.  If you lift that finger up, the next finger will take
        over and the driver is coded to not improperly 'jump' the mouse due to
        where the next finger is relative to the first.
        This means that spurious fingers won't mess up your mouse.  Remember
        however that three or more fingers emulates the left button.

Summary of changes:
 sys/dev/smbus/cyapa/cyapa.c | 108 +++++++++++++++++++++++++++++++++++++++++---
 1 file changed, 102 insertions(+), 6 deletions(-)

DragonFly BSD source repository

More information about the Commits mailing list