snd_hda does no output to headphones

Zhihao Yuan lichray at gmail.com
Fri Aug 19 20:20:23 UTC 2011


On Fri, Aug 19, 2011 at 2:54 PM, Matt <sendtomatt at gmail.com> wrote:
> On 08/19/11 09:15, Zhihao Yuan wrote:
>>
>> Hi,
>>
>> I think I must get this problem resolved. I work at night, so without
>> the headphones support, I can listen to music or watch video at that
>> time.
>>
>> The machine is HP Elitebook 8540w.
>>
>> ~>  uname -a
>> FreeBSD compaq.yuetime 8.2-STABLE FreeBSD 8.2-STABLE #6 r224860: Sun
>> Aug 14 15:17:57 CDT 2011
>>
>> lichray at compaq.yuetime:/usr/obj/home/lichray/devel/freebsd-stable/sys/HOUKAGO
>>  amd64
>>
>> I have already set up the default_unit:
>>
>> ~>  cat /dev/sndstat
>> FreeBSD Audio Driver (newpcm: 64bit 2009061500/amd64)
>> Installed devices:
>> pcm0:<HDA NVidia GT220 HDMI PCM #0 DisplayPort>  (play)
>> pcm1:<HDA NVidia GT220 HDMI PCM #0 DisplayPort>  (play)
>> pcm2:<HDA NVidia GT220 HDMI PCM #0 DisplayPort>  (play)
>> pcm3:<HDA NVidia GT220 HDMI PCM #0 DisplayPort>  (play)
>> pcm4:<HDA IDT 92HD75BX PCM #0 Analog>  (play/rec) default
>> pcm5:<HDA IDT 92HD75BX PCM #1 Analog>  (play)
>>
>>
>> pindump:
>>
>> hdac1: Dumping AFG cad=0 nid=1 pins:
>> hdac1:  nid 10 0x2121101f as  1 seq 15    Headphones  Jack jack  1 loc
>> 33 color   Black misc 0
>> hdac1:        Caps:    OUT HP           Sense: 0x00000000
>> hdac1:  nid 11 0x03a1102e as  2 seq 14           Mic  Jack jack  1 loc
>>  3 color   Black misc 0
>> hdac1:        Caps: IN             VREF Sense: 0x00000000
>> hdac1:  nid 12 0x90a70120 as  2 seq  0           Mic Fixed jack  7 loc
>> 16 color Unknown misc 1
>> hdac1:        Caps: IN             VREF Sense: 0x00000000
>> hdac1:  nid 13 0x90170110 as  1 seq  0       Speaker Fixed jack  7 loc
>> 16 color Unknown misc 1
>> hdac1:        Caps:    OUT              Sense: 0x00000000
>> hdac1:  nid 14 0x21811040 as  4 seq  0       Line-in  Jack jack  1 loc
>> 33 color   Black misc 0 [DISABLED]
>> hdac1:        Caps: IN             VREF Sense: 0x00000000
>> hdac1:  nid 15 0x03211030 as  3 seq  0    Headphones  Jack jack  1 loc
>>  3 color   Black misc 0
>> hdac1:        Caps:    OUT              Sense: 0x00000000
>> hdac1:  nid 20 0x40f000f0 as 15 seq  0         Other  None jack  0 loc
>>  0 color Unknown misc 0 [DISABLED]
>> hdac1:        Caps: IN OUT
>> hdac1:  nid 24 0x40f000f0 as 15 seq  0         Other  None jack  0 loc
>>  0 color Unknown misc 0 [DISABLED]
>> hdac1:        Caps: IN
>> hdac1:  nid 25 0x40f000f0 as 15 seq  0         Other  None jack  0 loc
>>  0 color Unknown misc 0 [DISABLED]
>> hdac1:        Caps: IN
>> hdac1:  nid 30 0x40f000f0 as 15 seq  0         Other  None jack  0 loc
>>  0 color Unknown misc 0 [DISABLED]
>> hdac1:        Caps:    OUT
>> hdac1:  nid 31 0x40f000f0 as 15 seq  0         Other  None jack  0 loc
>>  0 color Unknown misc 0 [DISABLED]
>> hdac1:        Caps:    OUT    EAPD
>> hdac1:  nid 32 0x40f000f0 as 15 seq  0         Other  None jack  0 loc
>>  0 color Unknown misc 0 [DISABLED]
>> hdac1:        Caps:    OUT
>> hdac1: NumGPIO=8 NumGPO=0 NumGPI=0 GPIWake=1 GPIUnsol=1
>> hdac1: GPIO: data=0x00000000 enable=0x00000000 direction=0x00000000
>> hdac1:       wake=0x00000000  unsol=0x00000000    sticky=0x00000000
>>
>>
>> A full boot dmesg is availiable at here:
>>
>> http://lists.freebsd.org/pipermail/freebsd-multimedia/2011-August/012389.html
>>
>> The sound comes from the internal speaker, and the internal record
>> works. But the sound does not work on the headphones.
>>
>> I read many posts and the snd_hda(4), and I know I need to bind the
>> headphones and the internal speaker to the same as, and I need to do
>> the same on output. I think there must be some people who knows how to
>> configure this here. Please give me some instructions. Thanks.
>
> It's been a while, but it looks like you have two headphones (nid10 &
> nid15)? I would try disabling the first one and setting the as and seq for
> the second one to match what the first one (nid10) have.
>

Oh, my... you must be a genius at troubleshooting. I swapped them with

hint.hdac.1.cad0.nid10.config="as=3 seq=0"
hint.hdac.1.cad0.nid15.config="as=1 seq=15"

and everything work. Thanks!

-- 
Zhihao Yuan, nickname lichray
The best way to predict the future is to invent it.
___________________________________________________
4BSD -- http://4bsd.biz/


More information about the freebsd-hackers mailing list