Pull xpc-disengage into release branch
[sfrench/cifs-2.6.git] / Documentation / input / appletouch.txt
1 Apple Touchpad Driver (appletouch)
2 ----------------------------------
3         Copyright (C) 2005 Stelian Pop <stelian@popies.net>
4
5 appletouch is a Linux kernel driver for the USB touchpad found on post
6 February 2005 Apple Alu Powerbooks.
7
8 This driver is derived from Johannes Berg's appletrackpad driver[1], but it has
9 been improved in some areas:
10         * appletouch is a full kernel driver, no userspace program is necessary
11         * appletouch can be interfaced with the synaptics X11 driver, in order
12           to have touchpad acceleration, scrolling, etc.
13
14 Credits go to Johannes Berg for reverse-engineering the touchpad protocol,
15 Frank Arnold for further improvements, and Alex Harper for some additional
16 information about the inner workings of the touchpad sensors.
17
18 Usage:
19 ------
20
21 In order to use the touchpad in the basic mode, compile the driver and load
22 the module. A new input device will be detected and you will be able to read
23 the mouse data from /dev/input/mice (using gpm, or X11).
24
25 In X11, you can configure the touchpad to use the synaptics X11 driver, which
26 will give additional functionalities, like acceleration, scrolling, 2 finger
27 tap for middle button mouse emulation, 3 finger tap for right button mouse
28 emulation, etc. In order to do this, make sure you're using a recent version of
29 the synaptics driver (tested with 0.14.2, available from [2]), and configure a
30 new input device in your X11 configuration file (take a look below for an
31 example). For additional configuration, see the synaptics driver documentation.
32
33         Section "InputDevice"
34                 Identifier      "Synaptics Touchpad"
35                 Driver          "synaptics"
36                 Option          "SendCoreEvents"        "true"
37                 Option          "Device"                "/dev/input/mice"
38                 Option          "Protocol"              "auto-dev"
39                 Option          "LeftEdge"              "0"
40                 Option          "RightEdge"             "850"
41                 Option          "TopEdge"               "0"
42                 Option          "BottomEdge"            "645"
43                 Option          "MinSpeed"              "0.4"
44                 Option          "MaxSpeed"              "1"
45                 Option          "AccelFactor"           "0.02"
46                 Option          "FingerLow"             "0"
47                 Option          "FingerHigh"            "30"
48                 Option          "MaxTapMove"            "20"
49                 Option          "MaxTapTime"            "100"
50                 Option          "HorizScrollDelta"      "0"
51                 Option          "VertScrollDelta"       "30"
52                 Option          "SHMConfig"             "on"
53         EndSection
54
55         Section "ServerLayout"
56                 ...
57                 InputDevice     "Mouse"
58                 InputDevice     "Synaptics Touchpad"
59         ...
60         EndSection
61
62 Fuzz problems:
63 --------------
64
65 The touchpad sensors are very sensitive to heat, and will generate a lot of
66 noise when the temperature changes. This is especially true when you power-on
67 the laptop for the first time.
68
69 The appletouch driver tries to handle this noise and auto adapt itself, but it
70 is not perfect. If finger movements are not recognized anymore, try reloading
71 the driver.
72
73 You can activate debugging using the 'debug' module parameter. A value of 0
74 deactivates any debugging, 1 activates tracing of invalid samples, 2 activates
75 full tracing (each sample is being traced):
76         modprobe appletouch debug=1
77                 or
78         echo "1" > /sys/module/appletouch/parameters/debug
79
80 Links:
81 ------
82
83 [1]: http://johannes.sipsolutions.net/PowerBook/touchpad/
84 [2]: http://web.telia.com/~u89404340/touchpad/index.html