GNU/Linux >> Tutoriels Linux >  >> Linux

Quel pilote gère mon pavé tactile ?

Il est probable qu'aucun d'eux ne le fasse. Sur mon système, par exemple, où j'utilise Fedora 19 et un Thinkpad 410 avec un pavé tactile Synaptic, je n'ai pas non plus de pilote Kernel.

$ lsmod|grep -iE "apple|cyapa|sermouse|synap|psmouse|vsxx|bcm"

Alors, qu'est-ce qui prend soin de cet appareil ? Eh bien, c'est en fait ce module Kernel :

$ lsmod|grep -iE "input"
uinput                 17672  0 

Si vous voulez en savoir plus sur ce module, vous pouvez utiliser modinfo uinput :

$ modinfo uinput
filename:       /lib/modules/3.13.11-100.fc19.x86_64/kernel/drivers/input/misc/uinput.ko
version:        0.3
license:        GPL
description:    User level driver support for input subsystem
author:         Aristeu Sergio Rozanski Filho
alias:          devname:uinput
alias:          char-major-10-223
...

Comme il s'avère que les périphériques d'entrée tels que ceux-ci sont souvent traités à un niveau supérieur, dans ce cas, les pilotes réels sont implémentés au niveau X11.

uinput est un module du noyau Linux qui permet de gérer le sous-système d'entrée à partir de la zone utilisateur. Il peut être utilisé pour créer et gérer des périphériques d'entrée à partir d'une application. Il crée un périphérique de caractères dans le répertoire /dev/input. L'appareil est une interface virtuelle, il n'appartient pas à un appareil physique.

SOURCE : Premiers pas avec uinput :le sous-système d'entrée au niveau de l'utilisateur

Alors, où sont mes pilotes de pavé tactile ?

Ils sont dans le sous-système de X11. Vous pouvez voir l'appareil en utilisant le xinput --list commande. Par exemple, voici les appareils de mon ordinateur portable Thinkpad :

$ xinput --list 
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ Logitech USB Receiver                     id=9    [slave  pointer  (2)]
⎜   ↳ Logitech USB Receiver                     id=10   [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=12   [slave  pointer  (2)]
⎜   ↳ TPPS/2 IBM TrackPoint                     id=13   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Sleep Button                              id=8    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=11   [slave  keyboard (3)]
    ↳ ThinkPad Extra Buttons                    id=14   [slave  keyboard (3)]

Notez que mon pavé tactile apparaît dans cette liste. Vous pouvez trouver des informations supplémentaires sur ces appareils via /proc , par exemple :

$ cat /proc/bus/input/devices 
...
I: Bus=0011 Vendor=0002 Product=0007 Version=01b1
N: Name="SynPS/2 Synaptics TouchPad"
P: Phys=isa0060/serio1/input0
S: Sysfs=/devices/platform/i8042/serio1/input/input5
U: Uniq=
H: Handlers=mouse0 event4 
B: PROP=9
B: EV=b
B: KEY=6420 30000 0 0 0 0
B: ABS=260800011000003
...

OK mais où est le chauffeur ?

En creusant plus profondément si votre système utilise un pavé tactile Synaptic (qui, je crois, fait environ 90 % de tous les pavés tactiles), vous pouvez faire un locate synaptics | grep xorg qui devrait révéler les fichiers suivants :

$ locate synaptics | grep xorg
/usr/lib64/xorg/modules/input/synaptics_drv.so
/usr/share/X11/xorg.conf.d/50-synaptics.conf
/usr/share/doc/xorg-x11-drv-synaptics-1.7.1
/usr/share/doc/xorg-x11-drv-synaptics-1.7.1/COPYING
/usr/share/doc/xorg-x11-drv-synaptics-1.7.1/README

Les premiers résultats sont le pilote réel dont vous parlez. Il est chargé dans X.org via le deuxième fichier ici :

Section "InputClass"
        Identifier "touchpad catchall"
        Driver "synaptics"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
EndSection

Et cette ligne :

        MatchDevicePath "/dev/input/event*"

Est ce qui associe les périphériques physiques à ce pilote. Et vous vous demandez probablement, comment ce type peut-il être si sûr ? L'utilisation de cette commande affiche l'appareil associé à mon pavé tactile Synaptic donné en utilisant id=12 du xinput --list résultat que j'ai montré plus tôt :

$ xinput --list-props 12 | grep "Device Node"
    Device Node (251):  "/dev/input/event4"

$ cat /var/log/Xorg.0.log | grep "input driver"

Sur mon ordinateur portable, il affiche :

...
[     9.054] (II) Using input driver 'synaptics' for 'Elan Touchpad'
...

Linux
  1. Gestion des erreurs dans les scripts Bash

  2. Quel terminal est le meilleur :Bash vs Zsh

  3. Sur quel shell suis-je en cours d'exécution ?

  4. Quel Bash est en cours d'exécution ?

  5. Redémarrage du pilote du pavé tactile Thesterious dans 19.10 ?

Linux Quelle commande

Quel pilote graphique dois-je utiliser sur un Asus N43 ?

lequel :commande introuvable

Qu'est-ce qu'un processus ininterrompu ?

Répertoire JAVA_HOME sous Linux

2 imprimantes 1 file d'attente