Fujitsu M2010 - Tuning du pilote snd hda

De Memento
Sauter à la navigation Sauter à la recherche
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Les possibilités multimédia du Fujitsu M2010 sous FreeBSD

Je dispose depuis quelques temps d'un Fujitsu M2010. Grâce au récent travail de Hans Petter Selasky, la webcam fonctionne parfaitement (multimedia/cuse4bsd-kmod + multimedia/libv4l + multimedia/webcamd):

  • Pwcview-1.4.1 fonctionne parfaitement.
  • Ekiga-2.0.11 ne détecte pas bien la webcam mais par contre Ekiga-3.2.6 la détecte parfaitement.
  • Cheese 2.30.1 ne détecte pas bien la webcam.

Il ne me restait plus comme seule problème que la détection du microphone interne par le pilote snd_hda.

Une lecture attentive de snd_hda(4) et de nombreux tâtonnements m'ont permis de déterminer les hint.hdac a placer dans le fichier /boot/loader.conf.local.

Sans aucun hint.hdac la commande sysctl dev.hdac.0.pindump=1 donne la configuration par défaut:

hdac0: Dumping AFG cad=0 nid=1 pins:
hdac0:  nid 17 0x411111f0 as 15 seq  0       Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
hdac0:        Caps:    OUT              Sense: 0x00000000
hdac0:  nid 18 0x90a601f0 as 15 seq  0           Mic Fixed jack  6 loc 16 color Unknown misc 1 [DISABLED]
hdac0:        Caps: IN                 
hdac0:  nid 20 0x90170110 as  1 seq  0       Speaker Fixed jack  7 loc 16 color Unknown misc 1
hdac0:        Caps:    OUT    EAPD     
hdac0:  nid 21 0x04211020 as  2 seq  0    Headphones  Jack jack  1 loc  4 color   Black misc 0
hdac0:        Caps:    OUT HP EAPD      Sense: 0x00000000
hdac0:  nid 22 0x411111f0 as 15 seq  0       Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
hdac0:        Caps:    OUT             
hdac0:  nid 24 0x04a11040 as  4 seq  0           Mic  Jack jack  1 loc  4 color   Black misc 0
hdac0:        Caps: IN OUT         VREF Sense: 0x00000000
hdac0:  nid 25 0x411111f0 as 15 seq  0       Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
hdac0:        Caps: IN OUT         VREF Sense: 0x00000000
hdac0:  nid 26 0x411111f0 as 15 seq  0       Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
hdac0:        Caps: IN OUT HP      VREF Sense: 0x00000000
hdac0:  nid 27 0x411111f0 as 15 seq  0       Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
hdac0:        Caps: IN OUT         VREF Sense: 0x00000000
hdac0:  nid 29 0x90970130 as  3 seq  0           AUX Fixed jack  7 loc 16 color Unknown misc 1
hdac0:        Caps: IN                 
hdac0:  nid 30 0x411111f0 as 15 seq  0       Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
hdac0:        Caps:    OUT              Sense: 0x00000000
hdac0: NumGPIO=0 NumGPO=0 NumGPI=0 GPIWake=0 GPIUnsol=0

En ajoutant dans le fichier /boot/loader.conf.local:

hint.hdac.0.cad0.nid18.config="as=2 seq=0 device=Mic"
hint.hdac.0.cad0.nid20.config="as=1 seq=0 device=Speaker"
hint.hdac.0.cad0.nid21.config="as=1 seq=15 device=Headphones"
hint.hdac.0.cad0.nid24.config="as=3 seq=1 device=Mic"
hint.hdac.0.cad0.nid29.config="as=0"

on obtient la configuration suivante:

hdac0: Dumping AFG cad=0 nid=1 pins:
hdac0:  nid 17 0x411111f0 as 15 seq  0       Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
hdac0:        Caps:    OUT              Sense: 0x00000000
hdac0:  nid 18 0x90a60120 as  2 seq  0           Mic Fixed jack  6 loc 16 color Unknown misc 1
hdac0:        Caps: IN                 
hdac0:  nid 20 0x90170110 as  1 seq  0       Speaker Fixed jack  7 loc 16 color Unknown misc 1
hdac0:        Caps:    OUT    EAPD     
hdac0:  nid 21 0x0421101f as  1 seq 15    Headphones  Jack jack  1 loc  4 color   Black misc 0
hdac0:        Caps:    OUT HP EAPD      Sense: 0x00000000
hdac0:  nid 22 0x411111f0 as 15 seq  0       Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
hdac0:        Caps:    OUT             
hdac0:  nid 24 0x04a11031 as  3 seq  1           Mic  Jack jack  1 loc  4 color   Black misc 0
hdac0:        Caps: IN OUT         VREF Sense: 0x00000000
hdac0:  nid 25 0x411111f0 as 15 seq  0       Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
hdac0:        Caps: IN OUT         VREF Sense: 0x00000000
hdac0:  nid 26 0x411111f0 as 15 seq  0       Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
hdac0:        Caps: IN OUT HP      VREF Sense: 0x00000000
hdac0:  nid 27 0x411111f0 as 15 seq  0       Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
hdac0:        Caps: IN OUT         VREF Sense: 0x00000000
hdac0:  nid 29 0x90970100 as  0 seq  0           AUX Fixed jack  7 loc 16 color Unknown misc 1 [DISABLED]
hdac0:        Caps: IN                 
hdac0:  nid 30 0x411111f0 as 15 seq  0       Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
hdac0:        Caps:    OUT              Sense: 0x00000000
hdac0: NumGPIO=0 NumGPO=0 NumGPI=0 GPIWake=0 GPIUnsol=0

Cette configuration permet d'utiliser le microphone interne du M2010 et en plus elle définit l'entrée des écouteurs externes comme remplaçant les haut-parleurs internes lorsque les écouteurs sont branchés.

Malheureusement, le micro externe ne fonctionne toujours pas :-(