Forum Linux.général Prise en main d'udev...

Posté par  .
Étiquettes : aucune
0
24
fév.
2006
Suite à mon message à succès : http://linuxfr.org/forums/10/15101.html
et pour prouver que je ne pose pas de questions sans chercher de mon côté avant, pendant et après l'avoir posée, j'ai quelques compléments d'informations.
Visiblement, le {coupable|responsable}, c'est udev.
J'ai donc tripatouillé udev, en me créant un fichier de règles pour instancier mes deux périphériques de pointage.
Les règles semblent bien fonctionner, mais il reste une chose que je n'arrive pas à faire :
- le récepteur usb étant branché, j'ai un périphérique /dev/input/mouse0 qui est créé. Un lien /dev/mouse pointe dessus. J'ai par ailleurs un /dev/input/input1 qui correspond à /dev/psaux, mon touchpad synaptics.
Ca me convient parfaitement jusque là.
Ce que je voudrais, c'est :
- lorsque je débranche à chaud le récepteur de la souris sans fil, /dev/mouse pointe vers /dev/input/mouse1 ou /dev/psaux, c'est à dire mon touchpad. Si je rebranche le récepteur, /dev/mouse pointe de nouveau vers /dev/input/mouse0.
J'ai donc ajouté ces deux règles à mon fichier /etc/udev/rules.d/20-mulot.rules :
KERNEL="mouse*", DRIVER="usbhid", NAME="/dev/input/mouse0", SYMLINK="mouse"
KERNEL="mouse*", DRIVER="psmouse", SYSFS{protocol}="SynPS/2", NAME="/dev/input/mouse1", SYMLINK="mouse"
mais ça ne fonctionne pas comme je voudrais.
J'ai testé avec udevtest, les deux règles sont bien utilisées par udev.

root# udevtest $(udevinfo -q path -n /dev/input/mouse0)
version 056
looking at '/class/input/input24/mouse0'
opened class_dev->name='mouse0'
configured rule in '/etc/udev/rules.d/20-mulot.rules[2]' applied, added symlink 'mouse'
configured rule in '/etc/udev/rules.d/20-mulot.rules[2]' applied, 'mouse0' becomes '/dev/input/mouse0'
creating device node '/dev//dev/input/mouse0', major = '13', minor = '32', mode = '0660', uid = '0', gid = '0'
root@portableDavid27:/etc/udev/rules.d# udevtest $(udevinfo -q path -n /dev/input/mouse1)
version 056
looking at '/class/input/input2/mouse1'
opened class_dev->name='mouse1'
configured rule in '/etc/udev/rules.d/20-mulot.rules[3]' applied, added symlink 'mouse'
configured rule in '/etc/udev/rules.d/20-mulot.rules[3]' applied, 'mouse1' becomes '/dev/input/mouse1'
creating device node '/dev//dev/input/mouse1', major = '13', minor = '33', mode = '0660', uid = '0', gid = '0'
root# cat 20-mulot.rules
# KERNEL="usb", SYSFS{product}="USB Receiver", SYSFS{manufacturer}="Logitech", SYSFS{idProduct}="c501", NAME="/dev/input/mouse0", SYMLINK="mouse"
KERNEL="mouse*", DRIVER="usbhid", NAME="/dev/input/mouse0", SYMLINK="mouse"
KERNEL="mouse*", DRIVER="psmouse", SYSFS{protocol}="SynPS/2", NAME="/dev/input/mouse1", SYMLINK="mouse"


Ce qui cliche :
- si /dev/mouse existe, il n'est pas remis à jour pour pointer vers psaux lorsque je débranche le récepteur.
Du coup, je reste avec mon xorg.conf qui utilise /dev/input/mouse0. Le mieux aurait été de le faire pointer vers /dev/mouse, mais je ne vois pas comment résoudre le problème.
Et je ne veux pas faire pointer mon xorg.conf vers /dev/input/mice étant donné que je ne veux pas que les deux périphériques de pointages fonctionnent en même temps.
Voilà, j'espère être plus clair que dans mon message précédant et qu'une bonne âme pourra m'aider.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.