Installation of the Synaptics Touchpad Driver for XFree 4.x =========================================================== Author: Stefan Gmeiner Requirements ------------ 1. You need X include files. On RPM based systems, they are usually included in the XFree86-devel package. On Debian systems, you need to install the packages x-dev, libx11-dev and libxext-dev. 2. For use with kernel 2.6.x you need to enable synaptics touchpad support when configuring the kernel (CONFIG_MOUSE_PS2). You also need support for the evdev interface (CONFIG_INPUT_EVDEV). If you compile evdev as a module, make sure it is loaded before starting the X server, as it will not be auto-loaded. 3. For use with an ALPS touchpad, you need to use a 2.6.x kernel and apply the alps patch. See the README.alps file for more details. 4. If you use XFree86 version 4.0 or 4.1, you will need the XFree86 source code to compile the driver. See the "How do I compile the driver?" section in the FAQ in the README file for details. 5. Using with kernel 2.4.x for x < 10 needs a kernel patch (pc_keyb.c.diff.2.4.3). Installing ---------- 1. Type "make" to build the driver "synaptics_drv.o". 2. Copy the driver module "synaptics_drv.o" into the XFree module path. This path is usually "/usr/X11R6/lib/modules/input/", and running "make install" as root will do this for you. Note though that some distributions have a different module path. For example, in Gentoo 1.4 (with XFree86 4.3.0), the correct path is "/usr/X11R6/lib/modules/drivers". 3. Add the driver to the XFree configuration file (usually called /etc/X11/XF86Config-4 or /etc/X11/XF86Config) Section "Module" ... Load "synaptics" ... EndSection 4. Add/Replace in the InputDevice section for the touchpad the following lines: Section "InputDevice" Identifier "Synaptics Mouse" Driver "synaptics" Option "Device" "/dev/psaux" Option "Protocol" "auto-dev" Option "LeftEdge" "1700" Option "RightEdge" "5300" Option "TopEdge" "1700" Option "BottomEdge" "4200" Option "FingerLow" "25" Option "FingerHigh" "30" Option "MaxTapTime" "180" Option "MaxTapMove" "220" Option "VertScrollDelta" "100" Option "MinSpeed" "0.06" Option "MaxSpeed" "0.12" Option "AccelFactor" "0.0010" Option "SHMConfig" "on" # Option "Repeater" "/dev/ps2mouse" EndSection Change the Identifier to the same name as in the ServerLayout section. The Option "Repeater" is at the moment for testing. 5. Add the "CorePointer" option to the InputDevice line at the ServerLayout section: Section "ServerLayout" ... InputDevice "Synaptics Mouse" "CorePointer" ... Note! You can not have more than one core pointer, so if you want to use an external mouse too, you have to set all mouse input devices except one to "AlwaysCore" instead of "CorePointer". 6. Start/Restart the X Server. If the touchpad doesn't work: a) Check the XFree log file. This file is usually called /var/log/XFree86.0.log. b) Try to start the X server with 'startx -- -logverbose 8' for more output. 7. If you want to be able to change driver parameters without restarting the X server, enable the "SHMConfig" option in the XFree configuration file. You can then use the "synclient" program to query and modify driver parameters on the fly. Note! This is not secure if you are in an untrusted multiuser environment. All local users can change the parameters at any time. If you can't get the driver working, mail the logfiles and the configuration file to petero2@telia.com. If you use a 2.6.x linux kernel, also mail the output from dmesg and the output from "cat /proc/bus/input/devices".