Fujitsu M2010 - Tuning du pilote snd hda
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 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 micro interne du M2010 et en plus elle définit l'entrée écouteurs externes comme remplaçant les haut-parleurs internes lorsque les écouteurs sont branchés.
Malheureusement, le micro externe ne fonctionne toujours pas :-(