Audio routing problem nVidia MCP51 HDA

freebsd at anjos.strangled.net freebsd at anjos.strangled.net
Sun Sep 30 06:40:18 PDT 2007


Good afternoon,

I apologize for cross posting, but I had no answer on freebsd-multimedia...

I've been using snd_hda for a few months, and only now discovered that the line
in in the back panel is not working. Actually, as I use an old box, I don't have
a front panel, so I really need the back panel entrance.
The motherboard is an ASUS M2NPV-VM.

I've read a bit of the stuff in the mailing lists and passed my eyes through the
source code briefly. 
Everything points to a routing problem. Looking at the verbose dmesg, it would
appear that nid 28 and 32 are the two line ins, and that 28 is selected. Perhaps
all I would need to do would be to have nid 32 selected. I'm guessing...

Unfortunately, there seems to be no userland tweaking interface, through sysctl or
ioctl, am I right?
I see that the hdac_hp_switch table has some entries taylored to specific
models, but I'm running into difficulties guessing the meaning of the hpnid,
spkrnid and eapdnid struct members... I can't tell if it would help me. I wish
somebody had commented the struct members...

Can anyone help me?

Thank you,

Miguel Ramos
Lisboa, Portugal

Here's some output:
----
FreeBSD satan.anjos.strangled.net 6.2-STABLE FreeBSD 6.2-STABLE #0: Wed Sep 26 18:46:15 WEST 2007     root at satan.anjos.strangled.net:/usr/obj/usr/src/sys/SATAN  i386
----
Mixer vol      is currently set to  75:75
Mixer pcm      is currently set to  75:75
Mixer speaker  is currently set to  75:75
Mixer mic      is currently set to   0:0
Mixer cd       is currently set to  75:75
Mixer rec      is currently set to   0:0
Recording source: mic
 devices: vol, pcm, speaker, mic, cd, rec
 rec devices: vol, mic, cd
----
pcm0: <NVidia MCP51 High Definition Audio Controller> mem 0xfe024000-0xfe027fff irq 22 at device 16.1 on pci0
pcm0: DMA Coherency: Uncacheable / vendor=0x10de
pcm0: Reserved 0x4000 bytes for rid 0x10 type 3 at 0xfe024000
ioapic0: Assigning PCI IRQ 22 to local APIC 1
ioapic0: routing intpin 22 (PCI IRQ 22) to vector 63
pcm0: [MPSAFE]
pcm0: hdac_dma_alloc: size=1024 -> roundsz=1024
pcm0: hdac_dma_alloc: size=2048 -> roundsz=2048
pcm0: HDA_DEBUG: HDA Config: on=0x00000000 off=0x00000000
pcm0: HDA_DEBUG: Starting CORB Engine...
pcm0: HDA_DEBUG: Starting RIRB Engine...
pcm0: HDA_DEBUG: Enabling controller interrupt...
pcm0: HDA_DEBUG: Scanning HDA codecs...
pcm0: HDA_DEBUG: Probing codec: 0
pcm0: HDA_DEBUG: 	startnode=1 endnode=2
pcm0: HDA_DEBUG: 	Found AFG nid=1 [startnode=1 endnode=2]
pcm0: HDA_DEBUG: Parsing AFG nid=1 cad=0
pcm0:        Vendor: 0x000011d4
pcm0:        Device: 0x00001986
pcm0:      Revision: 0x00000005
pcm0:      Stepping: 0x00000000
pcm0: PCI Subvendor: 0x81cb1043
pcm0:         Nodes: start=2 endnode=44 total=42
pcm0:     CORB size: 256
pcm0:     RIRB size: 256
pcm0:       Streams: ISS=4 OSS=4 BSS=0
pcm0:          GPIO: 0x00000100
pcm0:                NumGPIO=0 NumGPO=1 NumGPI=0 GPIWake=0 GPIUnsol=0
pcm0: hdac_widget_connection_parse: GHOST: nid=2 j=0 entnum=4 index=0 res=0x00000601
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=2 entries=2 found=2
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=6 entries=1 found=1
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=7 entries=8 found=8
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=8 entries=1 found=1
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=9 entries=2 found=2
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=10 entries=3 found=3
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=11 entries=2 found=2
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=12 entries=2 found=2
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=13 entries=2 found=2
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=14 entries=2 found=2
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=15 entries=8 found=8
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=16 entries=3 found=3
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=17 entries=2 found=2
pcm0: hdac_widget_connection_parse: nid=18 WARNING: zero cnid entnum=4 j=2 index=0 entries=8 found=2 res=0x21002211
pcm0: hdac_widget_connection_parse: GHOST: nid=18 j=2 entnum=4 index=0 res=0x21002211
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=18 entries=8 found=8
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=19 entries=1 found=1
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=20 entries=1 found=1
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=21 entries=1 found=1
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=22 entries=1 found=1
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=23 entries=1 found=1
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=24 entries=2 found=2
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=26 entries=1 found=1
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=27 entries=1 found=1
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=28 entries=1 found=1
pcm0: HDA_DEBUG: Pin config nid=28 0x01013012 -> 0x01813012
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=29 entries=1 found=1
pcm0: HDA_DEBUG: Pin config nid=29 0x01019015 -> 0x01a19015
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=30 entries=1 found=1
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=37 entries=1 found=1
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=38 entries=8 found=8
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=39 entries=2 found=2
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=40 entries=2 found=2
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=41 entries=2 found=2
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=42 entries=3 found=3
pcm0: HDA_DEBUG: hdac_widget_connection_parse: nid=43 entries=1 found=1
pcm0: HDA_DEBUG: Parsing Ctls...
pcm0: HDA_DEBUG: Parsing vendor patch...
pcm0: HDA_DEBUG: Building AFG tree...
pcm0: HDA_DEBUG: HWiP: HDA Widget Parser - Revision 1
pcm0: HDA_DEBUG: HWiP: Found 2 DAC path using HDA_PARSE_MIXER strategy.
pcm0: HDA_DEBUG: AFG commit...
pcm0: HDA_DEBUG: Ctls commit...
pcm0: [ 2] Ctl nid=4 DISABLED
pcm0: [ 3] Ctl nid=5 DISABLED
pcm0: [ 4] Ctl nid=9 Bind to NONE
pcm0: [ 5] Ctl nid=9 childnid=4 DISABLED
pcm0: [ 6] Ctl nid=9 childnid=5 DISABLED
pcm0: [ 9] Ctl nid=19 Bind to NONE
pcm0: [10] Ctl nid=20 Bind to NONE
pcm0: [12] Ctl nid=22 Bind to NONE
pcm0: [13] Ctl nid=23 Bind to NONE
pcm0: [15] Ctl nid=26 Bind to NONE
pcm0: [16] Ctl nid=27 Bind to NONE
pcm0: [17] Ctl nid=28 Bind to NONE
pcm0: [18] Ctl nid=29 Bind to NONE
pcm0: [19] Ctl nid=30 DISABLED
pcm0: HDA_DEBUG: PCMDIR_PLAY setup...
pcm0: HDA_DEBUG: PCMDIR_REC setup...
pcm0: HDA_DEBUG: OSS mixer initialization...
pcm0: Mixer "vol":
pcm0: Mixer "pcm":
pcm0: Mixer "speaker":
pcm0: Mixer "mic":
pcm0: Mixer "cd":
pcm0: Mixer "rec":
pcm0: HDA_DEBUG: Registering PCM channels...
pcm0: hdac_dma_alloc: size=4096 -> roundsz=4096
pcm0: sndbuf_setmap 7b3ba000, 4000; 0xeb95d000 -> 7b3ba000
pcm0: hdac_dma_alloc: size=4096 -> roundsz=4096
pcm0: sndbuf_setmap 7b3b6000, 4000; 0xeb961000 -> 7b3b6000
pcm0: <HDA Codec: Analog Devices AD1986A>
pcm0: <HDA Codec ID: 0x11d41986>
pcm0: <HDA Driver Revision: 20070710_0047>
pcm0: 
pcm0: HDA config/quirks: forcestereo ivref50 ivref80 ivref100 ivref
pcm0: 
pcm0: +-------------------+
pcm0: | DUMPING HDA NODES |
pcm0: +-------------------+
pcm0: 
pcm0: Default Parameter
pcm0: -----------------
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x000e007f
pcm0:        PCM size: 16 20 24
pcm0:        PCM rate: 8 11 16 22 32 44 48
pcm0:          IN amp: 0x80000000
pcm0:         OUT amp: 0x80051f1f
pcm0: 
pcm0:             nid: 2 [DIGITAL] [DISABLED]
pcm0:            name: audio output
pcm0:      widget_cap: 0x00030311
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:      Stream cap: 0x00000005
pcm0:          Format: AC3 PCM
pcm0:         PCM cap: 0x00020060
pcm0:        PCM size: 16
pcm0:        PCM rate: 44 48
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=1 [GHOST!] [UNKNOWN]
pcm0:           |
pcm0:           + <- nid=6 [audio input]
pcm0: 
pcm0:             nid: 3 [ANALOG]
pcm0:            name: audio output
pcm0:      widget_cap: 0x0000044d
pcm0:     Parse flags: 0x00000001
pcm0:       Ctl flags: 0x00000011
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x000e007f
pcm0:        PCM size: 16 20 24
pcm0:        PCM rate: 8 11 16 22 32 44 48
pcm0:      Output amp: 0x80051f17
pcm0:                  mute=1 step=31 size=5 offset=23
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 4 [ANALOG] [DISABLED]
pcm0:            name: audio output
pcm0:      widget_cap: 0x0000040d
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x000e007f
pcm0:        PCM size: 16 20 24
pcm0:        PCM rate: 8 11 16 22 32 44 48
pcm0:      Output amp: 0x80051f17
pcm0:                  mute=1 step=31 size=5 offset=23
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 5 [ANALOG] [DISABLED]
pcm0:            name: audio output
pcm0:      widget_cap: 0x0000040d
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x000e007f
pcm0:        PCM size: 16 20 24
pcm0:        PCM rate: 8 11 16 22 32 44 48
pcm0:      Output amp: 0x80051f17
pcm0:                  mute=1 step=31 size=5 offset=23
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 6 [ANALOG]
pcm0:            name: audio input
pcm0:      widget_cap: 0x00100511
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000800
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x0006007f
pcm0:        PCM size: 16 20
pcm0:        PCM rate: 8 11 16 22 32 44 48
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=18 [audio selector]
pcm0: 
pcm0:             nid: 7 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x00200101
pcm0:     Parse flags: 0x00000003
pcm0:       Ctl flags: 0x000001b1
pcm0:     connections: 8
pcm0:           |
pcm0:           + <- nid=3 [audio output]
pcm0:           |
pcm0:           + <- nid=9 [audio mixer]
pcm0:           |
pcm0:           + <- nid=19 [audio selector]
pcm0:           |
pcm0:           + <- nid=20 [audio selector]
pcm0:           |
pcm0:           + <- nid=21 [audio selector]
pcm0:           |
pcm0:           + <- nid=22 [audio selector]
pcm0:           |
pcm0:           + <- nid=23 [audio selector]
pcm0:           |
pcm0:           + <- nid=24 [audio selector]
pcm0: 
pcm0:             nid: 8 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x00200100
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=7 [audio mixer]
pcm0: 
pcm0:             nid: 9 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x0020010e
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:      Output amp: 0x80000000
pcm0:                  mute=1 step=0 size=0 offset=0
pcm0:       Input amp: 0x80000000
pcm0:                  mute=1 step=0 size=0 offset=0
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=4 [audio output] [DISABLED]
pcm0:           |
pcm0:           + <- nid=5 [audio output] [DISABLED]
pcm0: 
pcm0:             nid: 10 [ANALOG]
pcm0:            name: audio selector
pcm0:      widget_cap: 0x00300101
pcm0:     Parse flags: 0x00000001
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 3
pcm0:           |
pcm0:           + <- nid=7 [audio mixer] (selected)
pcm0:           |
pcm0:           + <- nid=4 [audio output] [DISABLED]
pcm0:           |
pcm0:           + <- nid=5 [audio output] [DISABLED]
pcm0: 
pcm0:             nid: 11 [ANALOG]
pcm0:            name: audio selector
pcm0:      widget_cap: 0x00300101
pcm0:     Parse flags: 0x00000001
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=7 [audio mixer] (selected)
pcm0:           |
pcm0:           + <- nid=4 [audio output] [DISABLED]
pcm0: 
pcm0:             nid: 12 [ANALOG]
pcm0:            name: audio selector
pcm0:      widget_cap: 0x00300101
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=4 [audio output] [DISABLED] (selected)
pcm0:           |
pcm0:           + <- nid=7 [audio mixer]
pcm0: 
pcm0:             nid: 13 [ANALOG]
pcm0:            name: audio selector
pcm0:      widget_cap: 0x00300101
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=5 [audio output] [DISABLED] (selected)
pcm0:           |
pcm0:           + <- nid=8 [audio mixer]
pcm0: 
pcm0:             nid: 14 [ANALOG]
pcm0:            name: audio selector
pcm0:      widget_cap: 0x00300100
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=8 [audio mixer] (selected)
pcm0:           |
pcm0:           + <- nid=17 [audio selector]
pcm0: 
pcm0:             nid: 15 [ANALOG]
pcm0:            name: audio selector
pcm0:      widget_cap: 0x0030010d
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000081
pcm0:      Output amp: 0x00270300
pcm0:                  mute=0 step=3 size=39 offset=0
pcm0:     connections: 8
pcm0:           |
pcm0:           + <- nid=31 [pin: Mic in (jack)]
pcm0:           |
pcm0:           + <- nid=32 [pin: line in (jack)]
pcm0:           |
pcm0:           + <- nid=29 [pin: Mic in (jack)] (selected)
pcm0:           |
pcm0:           + <- nid=29 [pin: Mic in (jack)]
pcm0:           |
pcm0:           + <- nid=39 [audio mixer]
pcm0:           |
pcm0:           + <- nid=40 [audio mixer]
pcm0:           |
pcm0:           + <- nid=41 [audio mixer]
pcm0:           |
pcm0:           + <- nid=42 [audio mixer]
pcm0: 
pcm0:             nid: 16 [ANALOG]
pcm0:            name: audio selector
pcm0:      widget_cap: 0x00300101
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 3
pcm0:           |
pcm0:           + <- nid=32 [pin: line in (jack)]
pcm0:           |
pcm0:           + <- nid=28 [pin: line in (jack)] (selected)
pcm0:           |
pcm0:           + <- nid=31 [pin: Mic in (jack)]
pcm0: 
pcm0:             nid: 17 [ANALOG]
pcm0:            name: audio selector
pcm0:      widget_cap: 0x00300941
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000081
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=15 [audio selector] (selected)
pcm0:           |
pcm0:           + <- nid=43 [audio mixer]
pcm0: 
pcm0:             nid: 18 [ANALOG]
pcm0:            name: audio selector
pcm0:      widget_cap: 0x0030010d
pcm0:     Parse flags: 0x00000006
pcm0:       Ctl flags: 0x00000800
pcm0:      Output amp: 0x80050f00
pcm0:                  mute=1 step=15 size=5 offset=0
pcm0:     connections: 8
pcm0:           |
pcm0:           + <- nid=17 [audio selector] (selected)
pcm0:           |
pcm0:           + <- nid=34 [pin: CD (fixed)]
pcm0:           |
pcm0:           + <- nid=0 [GHOST!] [UNKNOWN]
pcm0:           |
pcm0:           + <- nid=33 [pin: AUX (none)] [DISABLED]
pcm0:           |
pcm0:           + <- nid=16 [audio selector]
pcm0:           |
pcm0:           + <- nid=7 [audio mixer]
pcm0:           |
pcm0:           + <- nid=8 [audio mixer]
pcm0:           |
pcm0:           + <- nid=35 [pin: telephony (none)] [DISABLED]
pcm0: 
pcm0:             nid: 19 [ANALOG]
pcm0:            name: audio selector
pcm0:      widget_cap: 0x0030010d
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000081
pcm0:      Output amp: 0x80051f17
pcm0:                  mute=1 step=31 size=5 offset=23
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=17 [audio selector]
pcm0: 
pcm0:             nid: 20 [ANALOG]
pcm0:            name: audio selector
pcm0:      widget_cap: 0x0030010c
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:      Output amp: 0x80051f17
pcm0:                  mute=1 step=31 size=5 offset=23
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=35 [pin: telephony (none)] [DISABLED]
pcm0: 
pcm0:             nid: 21 [ANALOG]
pcm0:            name: audio selector
pcm0:      widget_cap: 0x0030010d
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000101
pcm0:      Output amp: 0x80051f17
pcm0:                  mute=1 step=31 size=5 offset=23
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=34 [pin: CD (fixed)]
pcm0: 
pcm0:             nid: 22 [ANALOG]
pcm0:            name: audio selector
pcm0:      widget_cap: 0x0030010d
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:      Output amp: 0x80051f17
pcm0:                  mute=1 step=31 size=5 offset=23
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=33 [pin: AUX (none)] [DISABLED]
pcm0: 
pcm0:             nid: 23 [ANALOG]
pcm0:            name: audio selector
pcm0:      widget_cap: 0x0030010d
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000000
pcm0:      Output amp: 0x80051f17
pcm0:                  mute=1 step=31 size=5 offset=23
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=16 [audio selector]
pcm0: 
pcm0:             nid: 24 [ANALOG]
pcm0:            name: audio selector
pcm0:      widget_cap: 0x0030010c
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000021
pcm0:      Output amp: 0x800b0f0f
pcm0:                  mute=1 step=15 size=11 offset=15
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=25 [beep widget] (selected)
pcm0:           |
pcm0:           + <- nid=36 [pin: other (fixed)]
pcm0: 
pcm0:             nid: 25 [ANALOG]
pcm0:            name: beep widget
pcm0:      widget_cap: 0x00700000
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000021
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 26 [ANALOG]
pcm0:            name: pin: headphones out (jack)
pcm0:      widget_cap: 0x00400185
pcm0:     Parse flags: 0x00000001
pcm0:       Ctl flags: 0x00000000
pcm0:         Pin cap: 0x0000001f
pcm0:                  ISC TRQD HP OUT : UNSOL
pcm0:      Pin config: 0x02214021
pcm0:     Pin control: 0x000000c0 HP OUT
pcm0:      Output amp: 0x80051f1f
pcm0:                  mute=1 step=31 size=5 offset=31
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=10 [audio selector]
pcm0: 
pcm0:             nid: 27 [ANALOG]
pcm0:            name: pin: line out (jack)
pcm0:      widget_cap: 0x00400185
pcm0:     Parse flags: 0x00000001
pcm0:       Ctl flags: 0x00000000
pcm0:         Pin cap: 0x0001001f
pcm0:                  ISC TRQD HP OUT EAPD : UNSOL
pcm0:      Pin config: 0x01014011
pcm0:     Pin control: 0x00000040 OUT
pcm0:            EAPD: 0x00000002
pcm0:      Output amp: 0x80051f1f
pcm0:                  mute=1 step=31 size=5 offset=31
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=11 [audio selector]
pcm0: 
pcm0:             nid: 28 [ANALOG]
pcm0:            name: pin: line in (jack)
pcm0:      widget_cap: 0x00400185
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000000
pcm0:         Pin cap: 0x00000037
pcm0:                  ISC TRQD OUT IN : UNSOL
pcm0:      Pin config: 0x01813012
pcm0:     Pin control: 0x00000020 IN
pcm0:      Output amp: 0x80051f1f
pcm0:                  mute=1 step=31 size=5 offset=31
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=12 [audio selector]
pcm0: 
pcm0:             nid: 29 [ANALOG]
pcm0:            name: pin: Mic in (jack)
pcm0:      widget_cap: 0x00400985
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000081
pcm0:         Pin cap: 0x00001737
pcm0:                  ISC TRQD OUT IN VREF[ 50 80 GROUND HIZ ] : UNSOL
pcm0:      Pin config: 0x01a19015
pcm0:     Pin control: 0x00000024 IN
pcm0:      Output amp: 0x80051f1f
pcm0:                  mute=1 step=31 size=5 offset=31
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=13 [audio selector]
pcm0: 
pcm0:             nid: 30 [ANALOG] [DISABLED]
pcm0:            name: pin: speaker (none)
pcm0:      widget_cap: 0x00400104
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:         Pin cap: 0x00000010
pcm0:                  OUT
pcm0:      Pin config: 0x501700f0
pcm0:     Pin control: 0x00000040 OUT
pcm0:      Output amp: 0x80051f1f
pcm0:                  mute=1 step=31 size=5 offset=31
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=14 [audio selector]
pcm0: 
pcm0:             nid: 31 [ANALOG]
pcm0:            name: pin: Mic in (jack)
pcm0:      widget_cap: 0x00400081
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000000
pcm0:         Pin cap: 0x00001727
pcm0:                  ISC TRQD IN VREF[ 50 80 GROUND HIZ ] : UNSOL
pcm0:      Pin config: 0x02a190f0
pcm0:     Pin control: 0x00000024 IN
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 32 [ANALOG]
pcm0:            name: pin: line in (jack)
pcm0:      widget_cap: 0x00400081
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000000
pcm0:         Pin cap: 0x00001727
pcm0:                  ISC TRQD IN VREF[ 50 80 GROUND HIZ ] : UNSOL
pcm0:      Pin config: 0x018130f0
pcm0:     Pin control: 0x00000024 IN
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 33 [ANALOG] [DISABLED]
pcm0:            name: pin: AUX (none)
pcm0:      widget_cap: 0x00400081
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:         Pin cap: 0x00000027
pcm0:                  ISC TRQD IN : UNSOL
pcm0:      Pin config: 0x509700f0
pcm0:     Pin control: 0x00000020 IN
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 34 [ANALOG]
pcm0:            name: pin: CD (fixed)
pcm0:      widget_cap: 0x00400001
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000101
pcm0:         Pin cap: 0x00000020
pcm0:                  IN
pcm0:      Pin config: 0x993310f0
pcm0:     Pin control: 0x00000020 IN
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 35 [ANALOG] [DISABLED]
pcm0:            name: pin: telephony (none)
pcm0:      widget_cap: 0x00400000
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:         Pin cap: 0x00000020
pcm0:                  IN
pcm0:      Pin config: 0x50b700f0
pcm0:     Pin control: 0x00000020 IN
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 36 [ANALOG]
pcm0:            name: pin: other (fixed)
pcm0:      widget_cap: 0x00400000
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:         Pin cap: 0x00000020
pcm0:                  IN
pcm0:      Pin config: 0x90f700f0
pcm0:     Pin control: 0x00000000
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 37 [DIGITAL] [DISABLED]
pcm0:            name: pin: SPDIF out (jack)
pcm0:      widget_cap: 0x00400301
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:         Pin cap: 0x00000010
pcm0:                  OUT
pcm0:      Pin config: 0x014510f0
pcm0:     Pin control: 0x00000040 OUT
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=2 [audio output] [DISABLED]
pcm0: 
pcm0:             nid: 38 [ANALOG]
pcm0:            name: power widget
pcm0:      widget_cap: 0x00500500
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 8
pcm0:           |
pcm0:           + <- nid=7 [audio mixer] (selected)
pcm0:           |
pcm0:           + <- nid=8 [audio mixer]
pcm0:           |
pcm0:           + <- nid=19 [audio selector]
pcm0:           |
pcm0:           + <- nid=20 [audio selector]
pcm0:           |
pcm0:           + <- nid=21 [audio selector]
pcm0:           |
pcm0:           + <- nid=22 [audio selector]
pcm0:           |
pcm0:           + <- nid=23 [audio selector]
pcm0:           |
pcm0:           + <- nid=24 [audio selector]
pcm0: 
pcm0:             nid: 39 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x00200101
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=31 [pin: Mic in (jack)]
pcm0:           |
pcm0:           + <- nid=29 [pin: Mic in (jack)]
pcm0: 
pcm0:             nid: 40 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x00200101
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=31 [pin: Mic in (jack)]
pcm0:           |
pcm0:           + <- nid=32 [pin: line in (jack)]
pcm0: 
pcm0:             nid: 41 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x00200101
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=29 [pin: Mic in (jack)]
pcm0:           |
pcm0:           + <- nid=32 [pin: line in (jack)]
pcm0: 
pcm0:             nid: 42 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x00200101
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 3
pcm0:           |
pcm0:           + <- nid=31 [pin: Mic in (jack)]
pcm0:           |
pcm0:           + <- nid=29 [pin: Mic in (jack)]
pcm0:           |
pcm0:           + <- nid=32 [pin: line in (jack)]
pcm0: 
pcm0:             nid: 43 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x00200100
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=15 [audio selector]
pcm0: 
pcm0: +------------------------+
pcm0: | DUMPING HDA AMPLIFIERS |
pcm0: +------------------------+
pcm0: 
pcm0:   1: nid=3 dir=0x1 index=0 ossmask=0x00000011 ossdev=4
pcm0:   2: nid=4 dir=0x1 index=0 ossmask=0x00000000 ossdev=0 [DISABLED]
pcm0:   3: nid=5 dir=0x1 index=0 ossmask=0x00000000 ossdev=0 [DISABLED]
pcm0:   4: nid=9 dir=0x1 index=0 ossmask=0x00000000 ossdev=0
pcm0:   5: nid=9 cnid=4 dir=0x2 index=0 ossmask=0x00000000 ossdev=0 [DISABLED]
pcm0:   6: nid=9 cnid=5 dir=0x2 index=1 ossmask=0x00000000 ossdev=0 [DISABLED]
pcm0:   7: nid=15 dir=0x1 index=0 ossmask=0x00000081 ossdev=7
pcm0:   8: nid=18 dir=0x1 index=0 ossmask=0x00000800 ossdev=0
pcm0:   9: nid=19 dir=0x1 index=0 ossmask=0x00000000 ossdev=0
pcm0:  10: nid=20 dir=0x1 index=0 ossmask=0x00000000 ossdev=0
pcm0:  11: nid=21 dir=0x1 index=0 ossmask=0x00000101 ossdev=8
pcm0:  12: nid=22 dir=0x1 index=0 ossmask=0x00000000 ossdev=0
pcm0:  13: nid=23 dir=0x1 index=0 ossmask=0x00000000 ossdev=0
pcm0:  14: nid=24 dir=0x1 index=0 ossmask=0x00000021 ossdev=5
pcm0:  15: nid=26 dir=0x1 index=0 ossmask=0x00000000 ossdev=0
pcm0:  16: nid=27 dir=0x1 index=0 ossmask=0x00000000 ossdev=0
pcm0:  17: nid=28 dir=0x1 index=0 ossmask=0x00000000 ossdev=0
pcm0:  18: nid=29 dir=0x1 index=0 ossmask=0x00000000 ossdev=0
pcm0:  19: nid=30 dir=0x1 index=0 ossmask=0x00000000 ossdev=0 [DISABLED]
pcm0: 
pcm0: +-----------------------------------+
pcm0: | DUMPING HDA AUDIO/VOLUME CONTROLS |
pcm0: +-----------------------------------+
pcm0: 
pcm0: Master Volume (OSS: vol)
pcm0:    |
pcm0:    +-  nid:  3 index:  0           mute: 1 step:  31 size:   5 off:  23 dir=0x1 ossmask=0x00000011
pcm0:    |
pcm0:    +-  nid: 15 index:  0           mute: 0 step:   3 size:  39 off:   0 dir=0x1 ossmask=0x00000081
pcm0:    |
pcm0:    +-  nid: 21 index:  0           mute: 1 step:  31 size:   5 off:  23 dir=0x1 ossmask=0x00000101
pcm0:    |
pcm0:    +-  nid: 24 index:  0           mute: 1 step:  15 size:  11 off:  15 dir=0x1 ossmask=0x00000021
pcm0: 
pcm0: PCM Volume (OSS: pcm)
pcm0:    |
pcm0:    +-  nid:  3 index:  0           mute: 1 step:  31 size:   5 off:  23 dir=0x1 ossmask=0x00000011
pcm0: 
pcm0: CD Volume (OSS: cd)
pcm0:    |
pcm0:    +-  nid: 21 index:  0           mute: 1 step:  31 size:   5 off:  23 dir=0x1 ossmask=0x00000101
pcm0: 
pcm0: Microphone Volume (OSS: mic)
pcm0:    |
pcm0:    +-  nid: 15 index:  0           mute: 0 step:   3 size:  39 off:   0 dir=0x1 ossmask=0x00000081
pcm0: 
pcm0: Recording Level (OSS: rec)
pcm0:    |
pcm0:    +-  nid: 18 index:  0           mute: 1 step:  15 size:   5 off:   0 dir=0x1 ossmask=0x00000800
pcm0: 
pcm0: Speaker/Beep (OSS: speaker)
pcm0:    |
pcm0:    +-  nid: 24 index:  0           mute: 1 step:  15 size:  11 off:  15 dir=0x1 ossmask=0x00000021
pcm0: 
pcm0: Playback path:
pcm0: 
pcm0:     nid=26 [pin: headphones out (jack)]
pcm0:       ^
pcm0:       |
pcm0:       +-----<------+
pcm0:                    ^
pcm0:                    |
pcm0:                  nid=10 [audio selector]
pcm0:                    ^
pcm0:                    |
pcm0:                  nid=7 [audio mixer]
pcm0:                    ^
pcm0:                    |
pcm0:                  nid=3 [audio output]
pcm0: 
pcm0:     nid=27 [pin: line out (jack)]
pcm0:       ^
pcm0:       |
pcm0:       +-----<------+
pcm0:                    ^
pcm0:                    |
pcm0:                  nid=11 [audio selector]
pcm0:                    ^
pcm0:                    |
pcm0:                  nid=7 [audio mixer]
pcm0:                    ^
pcm0:                    |
pcm0:                  nid=3 [audio output]
pcm0: 
pcm0: Recording sources:
pcm0: 
pcm0:     nid=18 [audio selector]
pcm0:       |
pcm0:       + <- nid=17 [audio selector] [recsrc: vol, mic]
pcm0:       |
pcm0:       + <- nid=34 [pin: CD (fixed)] [recsrc: vol, cd]
pcm0:       |
pcm0:       + <- nid=16 [audio selector]
pcm0:       |
pcm0:       + <- nid=7 [audio mixer] [recsrc: vol, pcm, speaker, mic, cd]
pcm0:       |
pcm0:       + <- nid=8 [audio mixer]
pcm0: 
pcm0: +--------------------------------------+
pcm0: | DUMPING PCM Playback/Record Channels |
pcm0: +--------------------------------------+
pcm0: 
pcm0:    PCM Playback: 1
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x000e007f
pcm0:        PCM size: 16 20 24
pcm0:        PCM rate: 8 11 16 22 32 44 48
pcm0:             DAC: 3
pcm0: 
pcm0:      PCM Record: 1
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x0006007f
pcm0:        PCM size: 16 20
pcm0:        PCM rate: 8 11 16 22 32 44 48
pcm0:             ADC: 6


More information about the freebsd-stable mailing list