diff options
author | Christoph Brill <egore911@egore911.de> | 2008-06-06 20:05:27 +0200 |
---|---|---|
committer | Christoph Brill <egore911@egore911.de> | 2008-06-06 20:05:27 +0200 |
commit | 1a9535cdc50af8e9e47200c4bc48e27ff4c05953 (patch) | |
tree | f4e8a1288bb8dec2f9287f642c2c7a2d7480aa3e /docs | |
parent | b570ba5943ef6876cf0c0d5affa1f6ea7fe418cb (diff) |
Move the current documents to the docs folder.
We should merge the interesting content to the manpages.
Diffstat (limited to 'docs')
-rw-r--r-- | docs/INSTALL | 130 | ||||
-rw-r--r-- | docs/INSTALL.DE | 103 | ||||
-rw-r--r-- | docs/INSTALL.FR | 105 | ||||
-rw-r--r-- | docs/README | 219 | ||||
-rw-r--r-- | docs/README.alps | 77 |
5 files changed, 634 insertions, 0 deletions
diff --git a/docs/INSTALL b/docs/INSTALL new file mode 100644 index 0000000..900b8c5 --- /dev/null +++ b/docs/INSTALL @@ -0,0 +1,130 @@ +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 "CornerCoasting" "1" + Option "CoastingSpeed" "3" + 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". diff --git a/docs/INSTALL.DE b/docs/INSTALL.DE new file mode 100644 index 0000000..6b2e4ed --- /dev/null +++ b/docs/INSTALL.DE @@ -0,0 +1,103 @@ +Installation des Synaptics Touchpad Treibers für XFree 4.x +=========================================================== + +Author: Stefan Gmeiner <riddlebox@freesurf.ch> +Übersetzer Markus Bajones <bajo@gmx.at> + +Voraussetzung: +-------------- + +- Bei Verwendung eines Kernel 2.4.x wenn x < 10 brauchst du einen Kernel Patch + (pc_keyb.c.diff.2.4.3). + + +- Bei Verwendung eines 2.6.x Kernels musst du während der Konfiguration + das Synaptics Touchpad aktivieren (CONFIG_MOUSE_PS2 and + CONFIG_MOUSE_PS2_SYNAPTICS). + Weiters benötigst du das evdev Interface (CONFIG_INPUT_EVDEV). + Falls du evdev als ein Modul kompiliert hast musst du sicherstellen, dass + es vor dem start des X Server geladen wird, da es nicht automatisch + geladen wird. + + +- Bei Verwendung mit einem ALPS Touchpads musst du einen 2.6.x Kernel verwenden + und den alps Patch installieren. + Lies auch die README.alps für mehr Details. + + + +Installation: +------------- + +1. Gib "make" ein um den Treiber (synaptics_drv.o) zu erstellen. + +2. Kopiere das Treiber Modul (synaptics_drv.o) in das XFree Modul Verzeichnis + (meist zu finden unter /usr/X11R6/lib/modules/input/). + Wenn du X in /usr/X11R6 installiert hast, kannst du auch als root + "make install" ausführen, dabei wird der Treiber in das obige Verzeichnis + kopiert. + +3. Um den Treiber zu laden muss in der Konfigurationsdatei Load "synaptics" + eingefügt werden. + +4. In der InputDevice-Section für das Touchpad sind folgende +Optionen einzufügen/ersetzen: + +Section "InputDevice" + Driver "synaptics" + Identifier "Mouse[1]" + 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 + +Als Identifier muss der gleiche Name wie in der +ServerLayout-Section verwendet werden. + +5. Füge die "CorePointer" Option in die InputDevice Zeile in der ServerLayout Sektion ein: + +Section "ServerLayout" +... + InputDevice "Mouse[1]" "CorePointer" +... + + Achtung: Du kannst nicht mehr als EINEN "core pointer" verwenden. + Wenn du also auch eine externe Maus verwenden willst, musst du + alle "mouse input devices" ausser einem von "CorePointer" auf "Always Core" umstellen. + + +6. Der X-Server ist neu zu starten. Sollte das Touchpad nicht + funktionieren. + + a) Die Ausgaben des XFree-Logfiles anschauen. + b) Den XServer mit "startx -- -logverbose 8" starten um mehr + Ausgaben zu erzeugen. + + +7. Wenn du die Einstellungen des Treibers ohne Neustart des X Server ändern willst, + aktiviere die Option "SHMConfig" in der XFree Konfigurationsdatei. + Danach kannst du das Programm "synclient" verwenden um die Treiberoptionen + direkt zu ändern. + + Achtung! Wenn du in einer nicht vertraunswürdigen Mehrbenutzer Umgebung bist + ist dies nicht sicher. + Alle lokalen Benutzer können jederzeit die Parameter verändern. + + +Falls du den Treiber nicht zum Funktionieren bringst, schicke die Log-Files und +die Konfigurationsdatei an petero2@telia.com. +Wenn du einen 2.6.x Linux Kernel verwendest schick auch die Ausgabe von dmesg und +den Inhalt von /proc/bus/input/devices mit. diff --git a/docs/INSTALL.FR b/docs/INSTALL.FR new file mode 100644 index 0000000..7a73667 --- /dev/null +++ b/docs/INSTALL.FR @@ -0,0 +1,105 @@ +Installation du driver du touchpad Synaptics pour XFree 4.x +=========================================================== + +Traduction française: Michel Rigot <michel.rigot@advalvas.be> + +Prérequis. +---------- + +1. L'utilisation d'un noyau antérieur à la version 2.4.10 nécessite + un patch (pc_keyb.c.diff.2.4.3). + +2. Avec le noyau 2.6.x, vous devez activer le support du touchpad + synaptics lors de la configuration du noyau + (CONFIG_MOUSE_PS2 et CONFIG_MOUSE_PS2_SYNAPTICS). Vous avez également + besoin du support pour l'interface evdev (CONFIG_INPUT_EVDEV). + Si vous compilez evdev en tant que module, soyez attentif à ce qu'il + soit chargé avant le démarrage du serveur X. Ceci est important + puisqu'il ne sera pas chargé automatiquement. + +3. Pour son utilisation avec un touchpad ALPS, vous devez utiliser un + noyau 2.6.x et appliquer le patch alps. Voyez le fichier README.alps + pour plus de détails. + +4. Pour compiler le programme "syndeamon", vous avez besoin des + fichiers "include" de X. Sur un système basé sur les paquetages RPM, + ils sont habituellement inclus dans le paquet "XFree86-devel". + +Installation. +------------- + +1. Taper "make" pour créer le driver "synaptics_drv.o" + +2. Copier le driver "synaptics_drv.o" dans le répertoire de modules de + XFree qui est habituellement "/usr/X11R6/lib/modules/input/". + Utiliser "make install" en tant que root qui fait celà à votre place. + Noter cependant que certaines distributions ont un chemin différent + vers le répertoire de modules. Par example, dans la distribution + Gentoo 1.4 (avec XFree86 4.3.0), le chemin correcte + est "/usr/X11R6/lib/modules/drivers/". + +3. Charger le driver en ajoutant dans le fichier de configuration de + XFree la ligne 'Load "synaptics"' dans la secion module. + +4. Ajouter ou remplacer les lignes suivantes pour le touchpad dans la + section "InputDevice" + +Section "InputDevice" + Driver "synaptics" + Identifier "Mouse[1]" + 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 + + Modifier la valeur de "Identifier" pour qu'elle corresponde au nom + dans la section "ServerLayout". + L'Option "Repeater" est en test pour le moment. + +5. Ajouter l' option "CorePointer" à la ligne "InputDevice" dans la + section "ServerLayout". + +Section "ServerLayout" + InputDevice "Mouse[1]" "CorePointer" + ... + + Note! Vous ne pouvez avoir plus d'un "core pointer", alors si vous + voulez utiliser une souris externe en plus du touchpad, vous + devez placer tous les périphériques d'entrée de type souris + en tant que "AlwaysCore", et un seul comme "CorePointer". + +6. Démarrer ou redémarrer le serveur X. Si le touchpad ne + fonctionne pas: + + a) Vérifier les fichiers log de XFree. + b) Essayer de démarrerle serveur X de la façon suivante pour obtenir + plus de renseignements: "startx -- -logverbose 8" + +7. Si vous désirez pouvoir changer les paramètres du driver sans + redémarrer le serveur X, activer l'option "SHMConfig" dans le + fichier de configuration de XFree. Vous pouvez alors utiliser le + programme "synclient" pour interroger ou modifier les paramètres + du driverau vol. + + Note! Celà présente un certain danger si vous travaillez dans un + environnement multi-utilisateurs non sécurisé. En effet, + tous les utilisateurs locaux ont la possiblitéde changer les + paramètres à leur guise. + +Si vous ne parvenez pas à faire fonctionner le driver, envoyez les +fichiers log et de configuration à <petero2@telia.com>. Si vous +utilisez un noyau Linux 2.6.x, envoyez également la sortie de "dmesg" +et le contenu de "/proc/bus/input/devices". diff --git a/docs/README b/docs/README new file mode 100644 index 0000000..d45133a --- /dev/null +++ b/docs/README @@ -0,0 +1,219 @@ +Synaptics TouchPad driver for XOrg/XFree86 +------------------------------------------ + +Introduction +------------ + +This is a driver for the Synaptics TouchPad for XOrg/XFree86 4.x. A +Synaptics touchpad by default operates in compatibility mode by +emulating a standard mouse. However, by using a dedicated driver, more +advanced features of the touchpad becomes available, such as: + +- Movement with adjustable, non-linear acceleration and speed. +- Button events through short touching of the touchpad. +- Double-Button events through double short touching of the touchpad. +- Dragging through short touching and holding down the finger on the + touchpad. +- Middle and right button events on the upper and lower corner of + the touchpad. +- Vertical scrolling (button four and five events) through moving + the finger on the right side of the touchpad. +- The up/down button sends button four/five events. +- Horizontal scrolling (button six and seven events) through moving + the finger on the lower side of the touchpad. +- The multi-buttons send button four/five events, and six/seven + events for horizontal scrolling. +- Adjustable finger detection. +- Multifinger taps: two finger for middle button and three finger + for right button events. (Needs hardware support. Not all models + implement this feature.) +- Pressure dependent motion speed. +- Trackstick emulation. +- Run-time configuration using shared memory. This means you can + change parameter settings without restarting the X server. + +Note that depending on the touchpad firmware, some of these features +might be available even without using the synaptics driver. Note also +that some functions are not available on all touchpad models, because +they need support from the touchpad hardware/firmware. (Multifinger +taps for example.) + + +Installation +------------ + +See the INSTALL file for detailed installation instructions. + + +Compatibility +------------- + +The driver has been reported to work on a number of different laptop +computers. See the COMPATIBILITY file for the list. If your computer +is not listed, please let me (petero2@telia.com) know if the driver +works on your computer. + + +Parameters +---------- + +See the synaptics(5) manual page for a description of the available +driver parameters. + + +FAQ +--- + +* Is this free software? + + Yes, the source code is released under the GNU General Public + License. + +* When will the driver be included in the XOrg distribution? + + This is unlikely to happen because of copyright issues. Although + the GPL license is compatible with the license used by the XOrg X + server, the XOrg project doesn't want to include GPL code in their + source code, because it would effectively make the whole XOrg + project GPL. The synaptics license can't be changed unless all + copyright holders agree to change the license, but previous + attempts to find all copyright holders for the synaptics source + code have failed. + + So unfortunately, the best we can currently hope for is that the + synaptics driver is included as a separate package by the major + distributions. + +* How do I use this driver with Linux kernel 2.6.x? + + You need to have the "evdev" driver loaded or compiled into the + kernel (CONFIG_INPUT_EVDEV). Set the "Protocol" parameter in the X + configuration file to "auto-dev". Also, if you set the "Device" + parameter to "/dev/psaux", the same X configuration file should + work for a 2.4.x kernel. + + When configuring the kernel, enable PS/2 mouse support + (CONFIG_MOUSE_PS2). + +* It still doesn't work with a 2.6 kernel. + + Some distributions come with an incomplete /dev directory. The + driver needs the /dev/input/eventX device nodes. Try to create + them manually if they don't exist already. (Look at + /proc/bus/input/devices to figure out how many nodes you need.) + + # mknod /dev/input/event0 c 13 64 + # mknod /dev/input/event1 c 13 65 + # mknod /dev/input/event2 c 13 66 + ... + +* How can I configure tap-to-click behavior? + + If you set MaxTapTime=0 in the X config file then the touchpad + will not use tapping at all, i.e. touching/tapping will not be + taken as a mouse click. + + If, instead, you set MaxTapMove=0 in the X config file, then the + touchpad will not use tapping for a single finger tap (left mouse + button click) but will for the two and three finger tap (middle + and right button click). + +* Why did tap-to-click stop working after I upgraded from an old version? + + Time is now measured in milliseconds instead of "number of + packets". In practice, this means that if you are upgrading from + an old version, you need to change MaxTapTime and + EmulateMidButtonTime to make "tap to click" work. Good values are + 180 and 75 respectively. + +* Gnome scrollbars scroll too much when using tap-to-click. Why? + + The ClickTime parameter is probably too big. Try setting it to + 100. Gnome scrollbars use auto repeat, ie if you press the left + mouse button and keep it pressed, the scroll bar will move until + you release the button. This will lead to problems if the tap time + is longer than the delay before auto repeat starts. + +* Vertical and horizontal scrolling events are mixed up. How come? + + Probably because some X startup/login script uses xmodmap to remap + the mouse buttons. Correct settings for the touchpad are: + + xmodmap -e 'pointer = 1 2 3 4 5 6 7' + + You can check the current settings by running: + + xmodmap -pp + +* Horizontal scrolling doesn't work in some programs. Is it a driver + bug? + + No, probably not. Support for horizontal scroll events must be + handled by the application programs. Not all programs do that + yet. Ask the authors of the application in question to implement + support for horizontal scroll events. + + You can use the "xev" program to check if the synaptics driver + generates the horizontal scroll events. + + If you are having problems with Mozilla, try this link: + + http://lists.debian.org/debian-laptop/2004/08/msg00167.html + +* Can the driver be used together with gpm? + + No, not reliably, if you are using a 2.4.x kernel. The gpm driver + and the X driver both try to read data from the touchpad, and if + they try to read at the same time, both drivers see incomplete + data and don't know how to interpret it. + + If you are running a 2.6.x kernel though, there should be no + conflict, because the kernel driver will make sure both user space + drivers receive all events from the touchpad. + +* How do I compile the driver? + + Beginning with version 0.11.8, it should be possible to compile + the driver by simply running "make". This will compile a driver + for XFree86 4.2.x, which will also work for 4.3.x versions of + XFree86. + + If you have an older version of XFree86, you will need an + installed X source tree. On an RPM based distribution, you can + build a suitable source tree by installing the XFree86 source RPM + and compile it. For example, in RedHat 9, use the following + commands: + + # rpm -vU XFree86-4.3.0-2.src.rpm + # cd /usr/src/redhat/SPECS + # rpmbuild -bb XFree86.spec + + Then change the TOP variable in the Makefile to match the version + of XFree86 you are using. In the example above, set + + TOP = /usr/src/redhat/BUILD/XFree86-4.3.0/xc + +* Can I use this driver with an ALPS Glidepoint device? + + Yes, see the README.alps file for more information. + +* The driver says "reset failed" and the touchpad doesn't work. What + can I do? + + This problem has been reported for some Compaq models. It's + currently not known why it happens, but removing the reset command + from the driver appears to make it work. If you use a 2.4 linux + kernel, replace the contents of the ps2_synaptics_reset() function + in ps2comm.c with a "return TRUE;" statement. If you use a 2.6 + linux kernel, remove the while loop in synaptics_query_hardware() + in the file drivers/input/mouse/synaptics.c in the linux kernel + source code. + + +Authors +------- + +Many people have contributed to this driver. Look at the top of +synaptics.c and ps2comm.c for details. + +The current maintainer is Peter Osterlund <petero2@telia.com>. diff --git a/docs/README.alps b/docs/README.alps new file mode 100644 index 0000000..d89b38b --- /dev/null +++ b/docs/README.alps @@ -0,0 +1,77 @@ +It is possible to use this driver with an ALPS Glidepoint device. If +you use an older 2.6 linux kernel which has no ALPS input driver, you +need to apply the ALPS kernel patch in the alps.patch file. See +http://www.kernelnewbies.org/faq/ for information about how to apply +kernel patches and compile kernels. + +Note! If you use kernel 2.6.11 or later, the alps patch is already +included, so you don't have to patch your kernel. + +Since ALPS touchpads don't have the same resolution as Synaptics +touchpads, you probably have to change some parameter values. Here is +an example InputDevice section for the X configuration file. + +Section "InputDevice" + Driver "synaptics" + Identifier "Mouse[1]" + 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" "120" + Option "RightEdge" "830" + Option "TopEdge" "120" + Option "BottomEdge" "650" + Option "FingerLow" "14" + Option "FingerHigh" "15" + Option "MaxTapTime" "180" + Option "MaxTapMove" "110" + Option "EmulateMidButtonTime" "75" + Option "VertScrollDelta" "20" + Option "HorizScrollDelta" "20" + Option "CornerCoasting" "1" + Option "CoastingSpeed" "3" + Option "MinSpeed" "0.3" + Option "MaxSpeed" "0.75" + Option "AccelFactor" "0.015" + Option "EdgeMotionMinSpeed" "200" + Option "EdgeMotionMaxSpeed" "200" + Option "UpDownScrolling" "1" + Option "CircularScrolling" "1" + Option "CircScrollDelta" "0.1" + Option "CircScrollTrigger" "2" +EndSection + +If you use a 2.4 linux kernel, you don't need to patch the kernel, but +you should instead set "Protocol" like this: + + Option "Protocol" "alps" + + +On some (all?) ALPS hardware, it is not possible to disable tapping +unless you apply the patch below. However, some users have reported +that this patch breaks tap-and-drag operations, which is why the patch +is not included in the main alps.patch file. + +--- linux/drivers/input/mouse/alps.c~alps-test3 2004-02-28 20:46:34.000000000 +0100 ++++ linux-petero/drivers/input/mouse/alps.c 2004-02-28 20:49:12.000000000 +0100 +@@ -87,6 +87,10 @@ static void ALPS_process_packet(struct p + y = (packet[4] & 0x7f) | ((packet[3] & 0x70)<<(7-4)); + z = packet[5]; + ++ if (packet[2] & 1) { ++ z = 35; ++ } ++ + if (z > 0) { + input_report_abs(dev, ABS_X, x); + input_report_abs(dev, ABS_Y, y); +@@ -97,7 +101,6 @@ static void ALPS_process_packet(struct p + if (z > 30) input_report_key(dev, BTN_TOUCH, 1); + if (z < 25) input_report_key(dev, BTN_TOUCH, 0); + +- left |= (packet[2] ) & 1; + left |= (packet[3] ) & 1; + right |= (packet[3] >> 1) & 1; + if (packet[0] == 0xff) { |