summaryrefslogtreecommitdiff
path: root/INSTALL
blob: 2ccc1126bba9845dbcda74f155621d7593dd51eb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
Installation of the Synaptics Touchpad Driver for XOrg/XFree 4.x
================================================================

Author: Stefan Gmeiner <riddlebox@freesurf.ch>

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. 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.

4. 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"
# enable SHMCOnfig if you want to enable synclient
# NB: enabling SHMConfig is insecure, since any user can invoke it
#  Option	 "SHMConfig"		 "on"
  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.09"
  Option	"MaxSpeed"		"0.18"
  Option	"AccelFactor"		"0.0015"
#  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". For
   example:

      Section "ServerLayout"
      ...
              InputDevice    "Mouse0" "CorePointer"
              InputDevice    "Synaptics Mouse" "AlwaysCore"
      ...
      Section "InputDevice"
      ...
              Identifier  "Mouse0"
              Option      "Device" "/dev/input/mice"
      ...

   This also applies if you are using a 2.6 linux kernel and the
   touchpad contains a "pass through" device. Usually a pass through
   device is a touch stick located in the middle of the keyboard, but
   it can also be a separate set of buttons located next to the
   touchpad. If you want the pass through device to be enabled in X,
   the second InputDevice is needed. If there is a line in
   /proc/bus/input/devices that begins with "P: Phys=synaptics-pt" it
   means that the kernel has found a pass through device.

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, check the trouble-shooting.txt
file for common problems. If that doesn't help, mail the log files 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".