snd_hda dont recognizes speaker

Sound does not work in my laptop (Intel High Definition 82801FB ICH6) on the "Speaker" and
only works the line-out. After loading snd_hda I get this:

Code:
# cat /dev/sndstat 
FreeBSD Audio Driver (newpcm: 32bit 2009061500/i386)
Installed devices:
pcm0: <HDA Realtek ALC880 PCM #0 Analog> (play/rec) default
pcm1: <HDA Realtek ALC880 PCM #1 Analog> (rec)
pcm2: <HDA Realtek ALC880 PCM #2 Digital> (rec)

What I guess from the verbose dmesg output is something wrong with the default pins
assigned.

this is the first part
Code:
hdac0: HDA Codec #0: Unknown Codec
hdac0: HDA Codec #1: Realtek ALC880
pcm0: <HDA Realtek ALC880 PCM #0 Digital> at cad 1 nid 1 on hdac0
pcm1: <HDA Realtek ALC880 PCM #1 Analog> at cad 1 nid 1 on hdac0
pcm2: <HDA Realtek ALC880 PCM #2 Analog> at cad 1 nid 1 on hdac0
...
hdac0: <Intel 82801F High Definition Audio Controller> mem 0xffe38000-0xffe3bfff irq 16 at device 27.0 on pci0
hdac0: HDA Driver Revision: 20100226_0142
hdac0: Reserved 0x4000 bytes for rid 0x10 type 3 at 0xffe38000
hdac0: attempting to allocate 1 MSI vectors (1 supported)
msi: routing MSI IRQ 256 to local APIC 0 vector 49
hdac0: using IRQ 256 for MSI
hdac0: [MPSAFE]
hdac0: [ITHREAD]
hdac0: Caps: OSS 4, ISS 4, BSS 0, NSDO 1, 64bit, CORB 256, RIRB 256
...

then probing codecs

Code:
hdac0: Probing codec #0...
hdac0: HDA Codec #0: Unknown Codec
hdac0:  HDA Codec ID: 0x10573055
hdac0:        Vendor: 0x1057
hdac0:        Device: 0x3055
hdac0:      Revision: 0x07
hdac0:      Stepping: 0x00
hdac0: PCI Subvendor: 0x10a71734
hdac0: 	Found modem FG nid=1 startnode=2 endnode=38 total=36
hdac0: Probing codec #1...
hdac0: HDA Codec #1: Realtek ALC880
hdac0:  HDA Codec ID: 0x10ec0880
hdac0:        Vendor: 0x10ec
hdac0:        Device: 0x0880
hdac0:      Revision: 0x08
hdac0:      Stepping: 0x00
hdac0: PCI Subvendor: 0x10a71734
hdac0: 	Found audio FG nid=1 startnode=2 endnode=34 total=32
hdac0: 
hdac0: Processing modem FG cad=0 nid=1...
hdac0: 
hdac0: Processing audio FG cad=1 nid=1...
hdac0: GPIO: 0x40000002 NumGPIO=2 NumGPO=0 NumGPI=0 GPIWake=0 GPIUnsol=1
hdac0:  nid 20 0x01014010 as  1 seq  0      Line-out  Jack jack  1 loc  1 color   Green misc 0
hdac0:  nid 21 0x01011012 as  1 seq  2      Line-out  Jack jack  1 loc  1 color   Black misc 0
hdac0:  nid 22 0x01016011 as  1 seq  1      Line-out  Jack jack  1 loc  1 color  Orange misc 0
hdac0:  nid 23 0x01012014 as  1 seq  4      Line-out  Jack jack  1 loc  1 color    Grey misc 0
hdac0:  nid 24 0x01a19830 as  3 seq  0           Mic  Jack jack  1 loc  1 color    Pink misc 8
hdac0:  nid 25 0x02a19c40 as  4 seq  0           Mic  Jack jack  1 loc  2 color    Pink misc 12
hdac0:  nid 26 0x01813031 as  3 seq  1       Line-in  Jack jack  1 loc  1 color    Blue misc 0
hdac0:  nid 27 0x02014c20 as  2 seq  0      Line-out  Jack jack  1 loc  2 color   Green misc 12
hdac0:  nid 28 0x411111f0 as 15 seq  0       Speaker  None jack  1 loc  1 color   Black misc 1
hdac0: Patching widget caps nid=29 0x00400000 -> 0x00700000
hdac0:  nid 30 0x0144111e as  1 seq 14     SPDIF-out  Jack jack  4 loc  1 color   Black misc 1
hdac0:  nid 31 0x01c46150 as  5 seq  0      SPDIF-in  Jack jack  4 loc  1 color  Orange misc 1
hdac0: Patched pins configuration:
hdac0:  nid 20 0x01014010 as  1 seq  0      Line-out  Jack jack  1 loc  1 color   Green misc 0
hdac0:  nid 21 0x01011012 as  1 seq  2      Line-out  Jack jack  1 loc  1 color   Black misc 0
hdac0:  nid 22 0x01016011 as  1 seq  1      Line-out  Jack jack  1 loc  1 color  Orange misc 0
hdac0:  nid 23 0x01012014 as  1 seq  4      Line-out  Jack jack  1 loc  1 color    Grey misc 0
hdac0:  nid 24 0x01a19830 as  3 seq  0           Mic  Jack jack  1 loc  1 color    Pink misc 8
hdac0:  nid 25 0x02a19c40 as  4 seq  0           Mic  Jack jack  1 loc  2 color    Pink misc 12
hdac0:  nid 26 0x01813031 as  3 seq  1       Line-in  Jack jack  1 loc  1 color    Blue misc 0
hdac0:  nid 27 0x02014c20 as  2 seq  0      Line-out  Jack jack  1 loc  2 color   Green misc 12
hdac0:  nid 28 0x411111f0 as 15 seq  0       Speaker  None jack  1 loc  1 color   Black misc 1 [DISABLED]
hdac0:  nid 30 0x0144111e as  1 seq 14     SPDIF-out  Jack jack  4 loc  1 color   Black misc 1
hdac0:  nid 31 0x01c46150 as  5 seq  0      SPDIF-in  Jack jack  4 loc  1 color  Orange misc 1
hdac0: 5 associations found:
hdac0: Association 0 (1) out:
hdac0:  Pin nid=20 seq=0
hdac0:  Pin nid=22 seq=1
hdac0:  Pin nid=21 seq=2
hdac0:  Pin nid=23 seq=4
hdac0:  Pin nid=30 seq=14
hdac0: Association 1 (2) out:
hdac0:  Pin nid=27 seq=0
hdac0: Association 2 (3) in:
hdac0:  Pin nid=24 seq=0
hdac0:  Pin nid=26 seq=1
hdac0: Association 3 (4) in:
hdac0:  Pin nid=25 seq=0
hdac0: Association 4 (5) in:
hdac0:  Pin nid=31 seq=0
hdac0: Tracing association 0 (1)
hdac0:  Pin 20 traced to DAC 2
hdac0:  Pin 22 traced to DAC 4
hdac0:  Pin 21 traced to DAC 3
hdac0:  Pin 23 traced to DAC 5
hdac0:  Pin 30 traced to DAC 6
hdac0: Association 0 (1) trace succeeded
hdac0: Tracing association 1 (2)
hdac0:  Unable to trace pin 27 seq 0 with min nid 0
hdac0: Association 1 (2) trace failed
hdac0: Tracing association 2 (3)
hdac0:  Pin 24 traced to ADC 7
hdac0:  Pin 26 traced to ADC 7
hdac0: Association 2 (3) trace succeeded
hdac0: Tracing association 3 (4)
hdac0:  Pin 25 traced to ADC 8
hdac0: Association 3 (4) trace succeeded
hdac0: Tracing association 4 (5)
hdac0:  Unable to trace pin 31 to ADC 9, undo traces
hdac0:  Pin 31 traced to ADC 10
hdac0: Association 4 (5) trace succeeded
hdac0: Tracing input monitor
hdac0: Tracing other input monitors
hdac0:  Tracing nid 24 to out
hdac0:  nid 24 is input monitor
hdac0:  Tracing nid 25 to out
hdac0:  nid 25 is input monitor
hdac0:  Tracing nid 26 to out
hdac0:  nid 26 is input monitor
hdac0:  Tracing nid 31 to out
hdac0: Tracing beeper
hdac0:  nid 29 traced to out
hdac0: FG config/quirks: forcestereo ivref50 ivref80 ivref100 ivref

Complete dmesg attached.

I have tried with some hints in /boot/device.hints
Code:
hint.hdac.0.cad1.nid28.config="conn=Fixed"
or
Code:
hint.hdac.0.cad1.nid20.config="as=1 seq=1 device=Speaker"
and
lots of combinations, but didnt work!!

I've spent a whole day trying to fix this problem: mixer levels
Code:
Mixer vol      is currently set to  70:70
Mixer pcm      is currently set to  75:75
Mixer speaker  is currently set to  75:75
Mixer line     is currently set to  75:75
Mixer mic      is currently set to   0:0
Mixer rec      is currently set to  75:75
Mixer igain    is currently set to   0:0
Mixer monitor  is currently set to  75:75

With Linux and ALSA worked perfect.


¿Any suggestion?
Thanks in advance
 

Attachments

It looks like your CODEC configuration is seriously wrong - I have doubt you have 7.1 output on laptop and some other things are also strange. Try to start with BIOS update. If it won't help - I would look on how Linux configures this CODEC and reproduced it using device hints.
 
mav@ said:
It looks like your CODEC configuration is seriously wrong - I have doubt you have 7.1 output on laptop and some other things are also strange. Try to start with BIOS update. If it won't help - I would look on how Linux configures this CODEC and reproduced it using device hints.

working config on dell xps 2010 for linux (he did not check)
https://bugtrack.alsa-project.org/alsa-bug/view.php?id=3403

how to convert this configuration to snd_hda?
try this device.hints, but it is not working
Code:
hint.hdac.0.cad0.nid10.config="0x0321121F"
hint.hdac.0.cad0.nid11.config="0x01112024"
hint.hdac.0.cad0.nid12.config="0x01111222"
hint.hdac.0.cad0.nid13.config="0x91174220"
hint.hdac.0.cad0.nid14.config="0x03811032"
hint.hdac.0.cad0.nid15.config="0x01116221"
hint.hdac.0.cad0.nid16.config="0x01452340"
hint.hdac.0.cad0.nid17.config="0x40C003F1"
hint.hdac.0.cad0.nid21.config="0x90A70330"
hint.hdac.0.cad0.nid27.config="0x405003F0"

hint.hdac.0.config="gpio5"
 
Back
Top