LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (http://www.linuxquestions.org/questions/slackware-14/)
-   -   Should I be using evdev or synaptics for my touchpad? (http://www.linuxquestions.org/questions/slackware-14/should-i-be-using-evdev-or-synaptics-for-my-touchpad-4175452406/)

WhiteHotLoveTiger 03-02-2013 11:19 AM

Should I be using evdev or synaptics for my touchpad?
 
Sorry if this is a really naive question, but should I be using evdev or synaptics for my laptop's touchpad?

I'm running Slackware-current on a ThinkPad T410. In the past, two-finger scrolling was working without me doing anything to set it up. I'm not sure exactly when, but recently it stopped working. The basic touchpad functionality still works, but I'd like to re-enable two-finger scrolling. In researching this, I've found a lot of threads and docs talking about synaptics, but not so much talk about evdev. Looking though my /var/logs/Xorg.0.log, I can see that my system is using evdev, rather than synaptics. Also, when I try to run synclient -l, I get the message, Couldn't find synaptics properties. No synaptics driver loaded?

So, is evdev fine, and I should look into enabling two-finger scroll with evdev, or should I try to get my touchpad running with synaptics?

WhiteHotLoveTiger 03-02-2013 08:04 PM

Ok, now I'm very confused. After suspending and un-suspending my laptop, the two-finger scroll has returned.

Here is what I believe is the relevant section from /var/logs/Xorg.0.log :

Code:

[ 21137.491] (II) config/udev: removing device PS/2 Generic Mouse
[ 21137.499] (II) evdev: PS/2 Generic Mouse: Close
[ 21137.499] (II) UnloadModule: "evdev"
[ 21138.517] (II) config/udev: Adding input device SynPS/2 Synaptics TouchPad (/dev/input/mouse0)
[ 21138.517] (II) No input driver specified, ignoring this device.
[ 21138.517] (II) This device may have been added with another device file.
[ 21138.517] (II) config/udev: Adding input device SynPS/2 Synaptics TouchPad (/dev/input/event5)
[ 21138.517] (**) SynPS/2 Synaptics TouchPad: Applying InputClass "evdev touchpad catchall"
[ 21138.517] (**) SynPS/2 Synaptics TouchPad: Applying InputClass "touchpad"
[ 21138.517] (II) LoadModule: "synaptics"
[ 21138.517] (II) Loading /usr/lib64/xorg/modules/input/synaptics_drv.so
[ 21138.517] (II) Module synaptics: vendor="X.Org Foundation"
[ 21138.517]    compiled for 1.13.2, module version = 1.6.3
[ 21138.517]    Module class: X.Org XInput Driver
[ 21138.517]    ABI class: X.Org XInput driver, version 18.0
[ 21138.517] (II) Using input driver 'synaptics' for 'SynPS/2 Synaptics TouchPad'
[ 21138.517] (**) SynPS/2 Synaptics TouchPad: always reports core events
[ 21138.517] (**) Option "Device" "/dev/input/event5"
[ 21138.552] (II) synaptics: SynPS/2 Synaptics TouchPad: ignoring touch events for semi-multitouch device
[ 21138.552] (--) synaptics: SynPS/2 Synaptics TouchPad: x-axis range 1472 - 5888
[ 21138.552] (--) synaptics: SynPS/2 Synaptics TouchPad: y-axis range 1408 - 4820
[ 21138.552] (--) synaptics: SynPS/2 Synaptics TouchPad: pressure range 0 - 255
[ 21138.552] (--) synaptics: SynPS/2 Synaptics TouchPad: finger width range 0 - 15
[ 21138.552] (--) synaptics: SynPS/2 Synaptics TouchPad: buttons: left right double triple
[ 21138.552] (--) synaptics: SynPS/2 Synaptics TouchPad: Vendor 0x2 Product 0x7
[ 21138.552] (**) Option "TapButton1" "1"
[ 21138.552] (**) Option "TapButton2" "2"
[ 21138.552] (**) Option "TapButton3" "3"
[ 21138.552] (--) synaptics: SynPS/2 Synaptics TouchPad: touchpad found
[ 21138.552] (**) SynPS/2 Synaptics TouchPad: always reports core events
[ 21138.571] (**) Option "config_info" "udev:/sys/devices/platform/i8042/serio1/input/input14/event5"
[ 21138.571] (II) XINPUT: Adding extended input device "SynPS/2 Synaptics TouchPad" (type: TOUCHPAD, id 11)
[ 21138.571] (**) synaptics: SynPS/2 Synaptics TouchPad: (accel) MinSpeed is now constant deceleration 2.5
[ 21138.571] (**) synaptics: SynPS/2 Synaptics TouchPad: MaxSpeed is now 1.75
[ 21138.571] (**) synaptics: SynPS/2 Synaptics TouchPad: AccelFactor is now 0.036
[ 21138.571] (**) SynPS/2 Synaptics TouchPad: (accel) keeping acceleration scheme 1
[ 21138.571] (**) SynPS/2 Synaptics TouchPad: (accel) acceleration profile 1
[ 21138.571] (**) SynPS/2 Synaptics TouchPad: (accel) acceleration factor: 2.000
[ 21138.571] (**) SynPS/2 Synaptics TouchPad: (accel) acceleration threshold: 4
[ 21138.571] (--) synaptics: SynPS/2 Synaptics TouchPad: touchpad found
[ 21144.985] (II) config/udev: Adding input device TPPS/2 IBM TrackPoint (/dev/input/mouse1)
[ 21144.985] (II) No input driver specified, ignoring this device.
[ 21144.985] (II) This device may have been added with another device file.
[ 21144.985] (II) config/udev: Adding input device TPPS/2 IBM TrackPoint (/dev/input/event14)
[ 21144.985] (**) TPPS/2 IBM TrackPoint: Applying InputClass "evdev pointer catchall"
[ 21144.985] (II) Using input driver 'evdev' for 'TPPS/2 IBM TrackPoint'
[ 21144.985] (**) TPPS/2 IBM TrackPoint: always reports core events
[ 21144.985] (**) evdev: TPPS/2 IBM TrackPoint: Device: "/dev/input/event14"
[ 21144.985] (--) evdev: TPPS/2 IBM TrackPoint: Vendor 0x2 Product 0xa
[ 21144.985] (--) evdev: TPPS/2 IBM TrackPoint: Found 3 mouse buttons
[ 21144.985] (--) evdev: TPPS/2 IBM TrackPoint: Found relative axes
[ 21144.985] (--) evdev: TPPS/2 IBM TrackPoint: Found x and y relative axes
[ 21144.985] (II) evdev: TPPS/2 IBM TrackPoint: Configuring as mouse
[ 21144.985] (**) evdev: TPPS/2 IBM TrackPoint: YAxisMapping: buttons 4 and 5
[ 21144.985] (**) evdev: TPPS/2 IBM TrackPoint: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200
[ 21144.985] (**) Option "config_info" "udev:/sys/devices/platform/i8042/serio1/serio2/input/input15/event14"
[ 21144.985] (II) XINPUT: Adding extended input device "TPPS/2 IBM TrackPoint" (type: MOUSE, id 14)
[ 21144.985] (II) evdev: TPPS/2 IBM TrackPoint: initialized for relative axes.
[ 21144.985] (**) TPPS/2 IBM TrackPoint: (accel) keeping acceleration scheme 1
[ 21144.985] (**) TPPS/2 IBM TrackPoint: (accel) acceleration profile 0
[ 21144.985] (**) TPPS/2 IBM TrackPoint: (accel) acceleration factor: 2.000
[ 21144.985] (**) TPPS/2 IBM TrackPoint: (accel) acceleration threshold: 4

It looks like after the suspend, evdev gives up my touchpad and synaptics grabs it. Could this be a result of me selecting the wrong option for my default mouse type when first installing slackware?

allend 03-02-2013 08:27 PM

From 'man evdev'
Quote:

evdev is an Xorg input driver for Linux´s generic event devices.
From 'man synaptics'
Quote:

synaptics is an Xorg input driver for touchpads. Even though touchpads can be handled by the normal evdev or mouse drivers, this driver allows more advanced features of the touchpad to become available.
Your touchpad options can be customised by copying /usr/share/X11/xorg.conf.d/50-synaptics.conf to /etc/X11/xorg.conf.d/50-synaptics.conf and then editing that copy. Details of options are in 'man synaptics'

When starting X, your touchpad should be automatically detected. Perhaps in your endeavours to get this working, you have somehow disabled the touchpad device through manipulation of Option "TouchpadOff". This would be maintained through suspend and resume cycles.

BTW - Had you read CHANGES_AND_HINTS.TXT you would have seen
Code:

Xorg no longer uses /etc/X11/xorg.conf by default (and in most cases, there
  is absolutely no need for it).  You can still create an xorg.conf file if
  you wish, or you can create some minimal xorg.conf snippets with only the
  specific contents that you wish to override (as an example, to use a binary
  video driver) as separate files in the /etc/X11/xorg.conf.d/ directory.

  /usr/share/X11/xorg.conf.d/ is the "packaged" configuration directory; all
  files ending with ".conf" in this directory are used by the X server
  unless there is an identically-named file in the local sysadmin directory.
  The local sysadmin config directory is /etc/X11/xorg.conf.d/ - all files
  ending with ".conf" in this directory are parsed. 

  There are several default config files in /usr/share/X11/xorg.conf.d/:
    * 10-evdev.conf
        a "catchall" file for input devices using the evdev driver; this
        should work for most hardware in the absence of a better driver
    * 50-synaptics.conf
        overrides the earlier 10-evdev.conf file and uses the synaptics
        driver for all touchpads


WhiteHotLoveTiger 03-03-2013 08:23 AM

Thanks for your reply Allend. I don't know why, after restarting the computer, my touchpad is running with synaptics again. I never made any changes to any xorg.conf files.

I actually did read through the Changes and Hints, but from my reading of it, I still don't understand why the synaptics driver didn't get my touchpad in the first place. It's supposed to override the evdev driver, but it didn't for me on my last boot.

Anyhow, I guess I can make this as solved, as my computer is running properly again, but as for my original question, what I was really wondering about was if either evdev or synaptics would be a more efficient driver. (I don't know much about drivers, so sorry if this is a silly question) I know that synaptics allows for more advanced features, but does this also mean that it's a little slower? Or does evdev, being a generic driver perform more slowly? Or is my understanding of drivers so off, that this question doesn't really make sense?


All times are GMT -5. The time now is 06:04 PM.