Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
touchpad_asus [Le 06/01/2015, 23:15]
78.194.198.203 [Le touchpad Asus]
— (Version actuelle)
Ligne 1: Ligne 1:
-{{tag>​Natty touchpad asus}} 
----- 
-======Le touchpad Asus====== 
- 
-Le [[:​touchpad]] sur un portable [[:asus]] fonctionne à peu près correctement,​ mais il n'est pas reconnu totalement par le système. En effet, lorsque vous naviguez dans le menu //Système -> Préférences -> Souris//, il n'y a pas d'​onglet "Pavé tactile"​.\\ 
-En suivant la documentation sur les [[:​touchpad|touchpads]],​ il est indiqué d'​installer GPointingDeviceSettings cependant aucun pavé tactile n'est détecté. En revanche, une souris "​ImPS/​2 Logitech Wheel Mouse" est présente... Cette page propose donc de rectifier ce problème en créant un module qui intègre les modifications nécessaires afin de pouvoir l' ajouter au noyau. 
- 
-<note tip>Le pavé tactile est maintenant géré nativement par le kernel 3.0. Il est donc inutile de faire ces manipulations si vous le possédez</​note>​ 
- 
-<note important>​ 
-Une méthode alternative à celle proposée ici et qui se base sur DKMS(dynamic kernel module system) est décrite ici: [[https://​bugs.launchpad.net/​ubuntu/​+source/​xserver-xorg-video-intel/​+bug/​681904/​comments/​113|Lien launchpad 1]] 
-Si ce lien ne fonctionne pas, une méthode similaire avec un autre pilote est décrite dans le même fil de commentaires [[https://​bugs.launchpad.net/​ubuntu/​+source/​xserver-xorg-video-intel/​+bug/​681904/​comments/​64|Lien Launchpad 2]] 
-</​note>​ 
- 
-<note important>​Avant de suivre ce qui suit, procédez à une [[:​tutoriel:​comment_sauver_et_restaurer_un_fichier|sauvegarde du module]] **psmouse.ko ** qui se trouve dans le dossier **/​lib/​modules/<​votre version de noyau>/​kernel/​drivers/​input/​mouse/​**. Saisissez dans un [[:​terminal]] la [[:​commande_shell|commande]] suivante:<​code>​ 
-sudo cp /​lib/​modules/​`uname -r`/​kernel/​drivers/​input/​mouse/​psmouse.ko /​lib/​modules/​`uname -r`/​kernel/​drivers/​input/​mouse/​psmouse.ko.backup 
-</​code></​note>​ 
- 
-<note important>​Cette astuce ne semble ne pas fonctionner sous Ubuntu 14.04 kernel 3.13.0-34 : 
-<​code>​ 
-atching file drivers/​input/​mouse/​elantech.c 
-Hunk #2 FAILED at 14. 
-Hunk #3 FAILED at 22. 
-Hunk #4 FAILED at 41. 
-Hunk #5 FAILED at 66. 
-Hunk #6 FAILED at 80. 
-Hunk #7 succeeded at 116 (offset 14 lines). 
-Hunk #8 FAILED at 120. 
-Hunk #9 FAILED at 136. 
-Hunk #10 succeeded at 179 (offset 26 lines). 
-Hunk #11 FAILED at 170. 
-Hunk #12 FAILED at 203. 
-Hunk #13 FAILED at 248. 
-Hunk #14 succeeded at 341 with fuzz 2 (offset 75 lines). 
-Hunk #15 FAILED at 275. 
-Hunk #16 FAILED at 407. 
-Hunk #17 FAILED at 465. 
-Hunk #18 FAILED at 481. 
-Hunk #19 succeeded at 1183 with fuzz 1 (offset 637 lines). 
-Hunk #20 FAILED at 602. 
-Hunk #21 FAILED at 643. 
-Hunk #22 FAILED at 695. 
-Hunk #23 FAILED at 725. 
-Hunk #24 FAILED at 779. 
-Hunk #25 succeeded at 1487 (offset 693 lines). 
-19 out of 25 hunks FAILED -- saving rejects to file drivers/​input/​mouse/​elantech.c.rej 
-patching file drivers/​input/​mouse/​elantech.h 
-Hunk #2 succeeded at 11 with fuzz 2 (offset 3 lines). 
-Hunk #3 FAILED at 61. 
-Hunk #4 FAILED at 72. 
-Hunk #5 FAILED at 91. 
-3 out of 5 hunks FAILED -- saving rejects to file drivers/​input/​mouse/​elantech.h.rej 
- 
-user@user-X550LN:​~/​src/​linux-source-3.13.0$ make -C /​usr/​src/​linux-headers-`uname -r` SUBDIRS=`pwd` drivers/​input/​mouse/​psmouse.ko 
-make: entrant dans le répertoire « /​usr/​src/​linux-headers-3.13.0-34-generic » 
-  CC [M]  /​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​psmouse-base.o 
-  CC [M]  /​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​synaptics.o 
-  CC [M]  /​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​alps.o 
-  CC [M]  /​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.o 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​ In function ‘elantech_read_reg’:​ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​120:​7:​ error: ‘ETF020030’ undeclared (first use in this function) 
-  case ETF020030: 
-       ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​120:​7:​ note: each undeclared identifier is reported only once for each function it appears in 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​121:​7:​ error: ‘ETF0208’ undeclared (first use in this function) 
-  case ETF0208: 
-       ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​122:​7:​ error: ‘ETF020B00’ undeclared (first use in this function) 
-  case ETF020B00: 
-       ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​123:​7:​ error: ‘ETF0402’ undeclared (first use in this function) 
-  case ETF0402: 
-       ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​124:​7:​ error: ‘ETF0401’ undeclared (first use in this function) 
-  case ETF0401: 
-       ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​125:​7:​ error: ‘ETF0403’ undeclared (first use in this function) 
-  case ETF0403: 
-       ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​126:​7:​ error: ‘ETF1400’ undeclared (first use in this function) 
-  case ETF1400: 
-       ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​127:​7:​ error: ‘ETF5900’ undeclared (first use in this function) 
-  case ETF5900: 
-       ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​129:​44:​ error: ‘register_read’ undeclared (first use in this function) 
-       ​elantech_ps2_command(psmouse, ​ NULL, register_read) || 
-                                            ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​ In function ‘elantech_write_reg’:​ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​183:​7:​ error: ‘ETF020030’ undeclared (first use in this function) 
-  case ETF020030: 
-       ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​184:​7:​ error: ‘ETF0208’ undeclared (first use in this function) 
-  case ETF0208: 
-       ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​185:​7:​ error: ‘ETF020B00’ undeclared (first use in this function) 
-  case ETF020B00: 
-       ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​186:​7:​ error: ‘ETF0402’ undeclared (first use in this function) 
-  case ETF0402: 
-       ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​187:​7:​ error: ‘ETF0401’ undeclared (first use in this function) 
-  case ETF0401: 
-       ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​188:​7:​ error: ‘ETF0403’ undeclared (first use in this function) 
-  case ETF0403: 
-       ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​189:​7:​ error: ‘ETF1400’ undeclared (first use in this function) 
-  case ETF1400: 
-       ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​ In function ‘elantech_report_absolute_v2’:​ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​345:​24:​ error: redefinition of ‘etd’ 
-  struct elantech_data *etd = psmouse->​private;​ 
-                        ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​343:​24:​ note: previous definition of ‘etd’ was here 
-  struct elantech_data *etd = psmouse->​private;​ 
-                        ^ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​ In function ‘elantech_set_int_attr’:​ 
-/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.c:​1191:​24:​ error: ‘ETF020030’ undeclared (first use in this function) 
-  if (etd->​hw_version < ETF020030) { 
-                        ^ 
-make[1]: *** [/​home/​user/​src/​linux-source-3.13.0/​drivers/​input/​mouse/​elantech.o] Erreur 1 
-make: *** [drivers/​input/​mouse/​psmouse.ko] Erreur 2 
-make: quittant le répertoire « /​usr/​src/​linux-headers-3.13.0-34-generic » 
-</​code>​ 
-</​note>​ 
- 
- 
-<note important>​ 
-Si le touchpad ne fonctionne pas du tout et interfère avec les souris usb externes (décalage sur la gauche de l'​écran toutes les 3 secondes), lisez les messages suivants : 
- 
-https://​bugs.launchpad.net/​ubuntu/​+source/​linux/​+bug/​1314198/​comments/​31 
- 
-Ce problème semble concerner beaucoup de détenteur ASUS et la solution de contournement fonctionne parfaitement chez moi. 
-</​note>​ 
-=====Première méthode===== 
- 
-====Pré-requis ==== 
-[[:​tutoriel:​comment_installer_un_paquet|Installez les paquets]] **[[apt>​linux-source,​linux-headers-`uname -r`,​build-essential,​libncurses5,​libncurses5-dev|linux-source linux-headers-`uname -r` build-essential libncurses5 libncurses5-dev]]**\\ 
-Ce qui donne par exemple en ligne de commande à saisir dans un [[:​terminal]]:​ 
-<​code>​ 
-sudo apt-get install linux-source linux-headers-`uname -r` build-essential libncurses5 libncurses5-dev 
-</​code>​ 
-<​note>​Il est possible que vous ayiez également à installer le paquet des sources :\\ **[[apt>​linux-source-`uname -r`]]**</​note>​ 
- 
-====Création du module==== 
- 
-  * Créer un répertoire src dans votre répertoire home et y copier les sources correspondant à votre version. (remplacer VERSION par les références de la votre, que vous pouvez connaître en faisant ls /​usr/​src/​linux-source*.bz2) :<​code>​ 
-mkdir ~/src 
-cd ~/src 
-tar jxvf /​usr/​src/​linux-source-VERSION.tar.bz2 
-cd linux-source-VERSION 
-</​code>​ 
-  * Copier la configuration actuelle :<​code>​ 
-cp /​boot/​config-VERSION .config 
-make oldconfig 
-</​code>​ 
- 
-<note important>​POUR CEUX QUI SONT PASSÉ À LA VERSION 3.0 DU NOYAU, IL N'Y PAS BEAUCOUP DE CHANGEMENT. 
-L'​astuce est de faire la procédure avec l'​ancienne source (exemple 2.6.38-10)-- vu qu'il n'y a encore de fichier source en version 3.0-- 
- 
-Donc pensez à replacer le "​VERSION"​ par 2.XX ci-dessus. ​ 
-Pour la suite, bien garder l'​expression `uname -r`, qui correspond à la version actuelle de votre noyaux. (exemple 3.0.1)</​note>​ 
- 
-  * Vérifier que l'​option elantech est active :<​code>​grep -i elantech .config</​code>​qui doit renvoyer<​code>​CONFIG_MOUSE_PS2_ELANTECH=y</​code>​ 
-<​note>​ Si vous avez pour réponse <​code>#​ CONFIG_MOUSE_PS2_ELANTECH is not set</​code>​lancez <​code>​make menuconfig</​code>​ descendez à la section //Device Drivers ((Pilote de périphérique)) -> Input Device Support ((Prise en charge du périphérique d'​entrée)) -> Mice ((Souris)) //. Pressez la barre d'​espace à la ligne //Elantech PS/2 protocol extension// ce qui devrait ajouter un astérisque [*] indiquant la bonne sélection. Choisissez ensuite //Exit ((Sortir))//​ jusqu'​à la question << Do you wish to save your new kernel configuration >> où vous surlignerez l'​option //YES ((Oui))// afin de sauvegarder la configuration.\\ <note tip>La navigation dans le menu de configuration des modules s'​effectue avec les touches du :  
-  * haut (↑) / bas (↓) : pour choisir une ligne 
-  * gauche (<-) / droite (->) : pour surligner les choix proposés dans la barre inférieure //Select ((Sélectionner)) / Exit ((Sortir)) / Help ((Aide))// 
-  * Entrée : pour valider la sélection précédemment surlignée 
-  * Barre espace permet de modifier l'​état de la ligne sélectionnée par les flèches haut (↑) / bas (↓) 
-</​note>​ 
-</​note> ​ * Appliquer les patchs<​code>​wget -O 01elantech_2.6.38.patch https://​launchpadlibrarian.net/​71387234/​01elantech_2.6.38.patch 
-patch -p1 < 01elantech_2.6.38.patch 
-</​code>​ 
-  * Construire le module incluant le patch <​code>​make -C /​usr/​src/​linux-headers-`uname -r` SUBDIRS=`pwd` drivers/​input/​mouse/​psmouse.ko</​code>​ 
- 
-==== Chargement du module==== 
-Pour vérifier que le module fraichement créé fonctionne, saisissez dans un [[:​terminal]] les [[:​commande_shell|commandes]] suivantes 
-<​code>​ 
-sudo modprobe -r psmouse 
-sudo insmod drivers/​input/​mouse/​psmouse.ko 
-</​code>​ 
-Un onglet "Pavé tactile"​ doit être présent dans le menu //Système -> Préférences -> Souris// 
- 
-Si ça n'est pas le cas, déchargez le module : 
-<​code>​sudo modprobe -r psmouse 
-sudo modprobe psmouse</​code>​ 
-FIXME et ensuite? 
- 
-==== Rendre le changement permanent ==== 
-Pour que le noyau charge ce module à chaque démarrage il vous faut le copier dans le système. 
-<​code>​sudo cp drivers/​input/​mouse/​psmouse.ko /​lib/​modules/​`uname -r`/​kernel/​drivers/​input/​mouse/​psmouse.ko</​code>​ 
-Vérifiez que cette copie fonctionne 
-<​code>​ 
-sudo modprobe -r psmouse 
-sudo modprobe psmouse</​code>​ 
- 
-Si toutefois celà ne fonctionnait pas, pour annuler les changements : 
-<​code>​ 
-sudo cp /​lib/​modules/​`uname -r`/​kernel/​drivers/​input/​mouse/​psmouse.ko.backup /​lib/​modules/​`uname -r`/​kernel/​drivers/​input/​mouse/​psmouse.ko 
-sudo modprobe -r psmouse 
-sudo modprobe psmouse 
-</​code>​ 
- 
-====Liste des portables pris en charge par le module==== 
- 
-[[:​asus_x53sv-sx200v|Asus X53SV-SX200V]]. 
- 
-Asus X53SJ 
- 
-Asus X93S \\ 
- 
-Asus X43SV\\ 
- 
-Asus K52SV \\ 
- 
-//​Contributeurs : valroy, alexmic// 
- 
-=====Seconde méthode===== 
- 
-==== Instructions ==== 
- 
-Voici une solution plus simple et plus robuste: 
- 
-  * Installez **[[apt>​dkms]]** 
-  * Vérifiez si aucun module //​elantech//​ n'a été installé auparavant ​ 
-  <​code>​ dkms status </​code>​ 
-  * Si un module //​elantech//​ est installé, supprimez-le: ​ 
-  <​code>​ remove -m <​module>​ -v <​module-version>​ --all </​code>  ​ 
-Exemple: <​code>​ sudo dkms remove -m psmouse -v elantech-lp681904-1 --all </​code>​ 
-  * Il faut maintenant télécharger et installer le nouveau module: ​ 
-  <​code>​ cd /usr/src/ 
-sudo wget http://​people.debian.org/​~julien/​lp681904/​psmouse-elantech-lp681904-1.tar.bz2 
-sudo tar jxvf psmouse-elantech-lp681904-1.tar.bz2 
-sudo dkms add -m psmouse -v elantech-lp681904-1 
-sudo dkms build -m psmouse -v elantech-lp681904-1 
-sudo dkms install -m psmouse -v elantech-lp681904-1</​code>​ 
- 
-Redémarrez et votre pavé tactile sera correctement reconnu! 
- 
-====Liste des portables pris en charge par le module==== 
- 
-[[:​asus_x53sv-sx111v|Asus X53SV-SX111V]] 
- 
-Samsung NP305U1A 
- 
- 
-//​Contributeurs : [[:​utilisateurs:​BlackEco]] 
- 
-Gedel 
-// 
- 
-=====Contourner le problème===== 
- 
-==== Instructions ==== 
- 
-Si malgré tout aucune des solutions précédentes ne fonctionne, il est possible de passer un paramètre à grub pour que le pavé tactile soit reconnu comme un pavé tactile "​simple",​ c’est-à-dire un pavé tactile qui ne soit pas multipoint. Certaines fonctionnalités comme le scrolling ne fonctionneront donc pas, mais vous pourrez toutefois déplacer le pointeur et les clics droit/​gauche fonctionneront correctement. 
- 
-Pour ce faire, il vous faudra éditer le fichier **/​etc/​default/​grub** ;​ Ajoutez à la clé **GRUB_CMDLINE_LINUX_DEFAULT** le couple clé/valeur suivant **"​psmouse.proto=bare"​**. 
- 
-Par exemple si la ligne du fichier **/​etc/​default/​grub** ressemble à ceci : 
- 
-<​code>​GRUB_CMDLINE_LINUX_DEFAULT="​quiet splash"</​code>​ 
- 
-Au final, elle devra ressembler à cela : 
- 
-<​code>​GRUB_CMDLINE_LINUX_DEFAULT="​quiet splash psmouse.proto=bare"</​code>​ 
- 
-Ouvrez ensuite un terminal et entrez-y la commande suivante : 
- 
-<​code>​sudo grup-update</​code>​ 
- 
-Une fois cette opération terminée, il vous faut redémarrer votre ordinateur et le tour est joué ! 
- 
-====Liste des portables pris en charge par le module==== 
- 
-[[:​asus_x550lnv-xo192h|ASUS X550LNV-XO192H]] 
  
  • touchpad_asus.1420582554.txt.gz
  • Dernière modification: Le 06/01/2015, 23:15
  • par 78.194.198.203