Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 07 Dec 2006 01:42:41 +0900
From:      Hiroharu Tamaru <tamaru@myn.rcast.u-tokyo.ac.jp>
To:        multimedia@freebsd.org
Cc:        Ariff Abdullah <ariff@FreeBSD.org>
Subject:   snd_hda: loud distorted sound with NVidia MCP51
Message-ID:  <sa6mz612cxq.wl%tamaru@myn.rcast.u-tokyo.ac.jp>

next in thread | raw e-mail | index | archive | help
Hi,

First of all, thank you so much for all the work you have
been doing on this.  It is very nice to have popular, new
hardware well supported.

I am using
http://people.freebsd.org/~ariff/lowlatency/sndkld_releng6_i386_lowlatency.tar.gz
with the date on the tar archive 02-Dec-2006.

I've tested with mplayer (recompiled after replacing soundcard.h) and amp.

The playback in itself work fine.  (Great!, Thanks!)
However the volume is very loud and (therefore?) distored.

This is the hardware I have:

Hardware/chipset: ASUSTek P1-AH2 barebone / NVidia MCP51
http://www.asus.com/products4.aspx?modelmenu=1&model=1151&l1=1&l2=3&l3=0

running i386 6.2RC1

Fiddling with vol and pcm with /usr/sbin/mixer only changes
the volume very slightly ( but it does change, always way
loud ).  But decreasing it down until where 'vol' multiplied
by 'pcm' becomes less than 200, the sound stops completely.
I have not tried all combinations, but for instance,
vol = 2, pcm = 100 gives loud distored sound whereas
vol = 2, pcm =  99 gives silence.
Same with vol=50, pcm=4 and vol=49, pcm=4, etc.

This barebone has a pair of speaker, mic connector at the front panel
and a speaker-mic-line trio at the rear, but both speaker connectors
behaves the same.

Setting hint.pcm.0.softpcmvol=1 did not help (the behaviour is the
same with or without this hint).

Is there anything else I can try?
Thanks.

-- 
Hiroharu

=======================================================================

Here are the hardware infos: (I hope I have put everything that's needed...)

pcm0@pci0:16:1: class=0x040300 card=0x81cb1043 chip=0x026c10de rev=0xa2 hdr=0x00
    vendor   = 'NVIDIA Corporation'
    class    = multimedia

Some basic info from non-verbose dmesg:

FreeBSD 6.2-RC1 #0: Mon Dec  4 16:48:53 JST 2006
    root@p1ah2:/usr/obj/usr/src/sys/GENERIC
ACPI APIC Table: <Nvidia AWRDACPI>
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: AMD Sempron(tm) Processor 3000+ (1607.42-MHz 686-class CPU)
  Origin = "AuthenticAMD"  Id = 0x40ff2  Stepping = 2
  Features=0x78bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2>
  Features2=0x2001<SSE3,CX16>
  AMD Features=0xea500800<SYSCALL,NX,MMX+,FFXSR,RDTSCP,LM,3DNow+,3DNow>
  AMD Features2=0x19<LAHF,<b3>,CR8>
real memory  = 1005518848 (958 MB)
avail memory = 966488064 (921 MB)
ioapic0 <Version 1.1> irqs 0-23 on motherboard
:
acpi0: <Nvidia AWRDACPI> on motherboard
acpi_bus_number: can't get _ADR
acpi_bus_number: can't get _ADR
acpi_bus_number: can't get _ADR
acpi_bus_number: can't get _ADR
acpi0: Power Button (fixed)
acpi_bus_number: can't get _ADR
acpi_bus_number: can't get _ADR
acpi_bus_number: can't get _ADR
acpi_bus_number: can't get _ADR
Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x4008-0x400b on acpi0
cpu0: <ACPI CPU> on acpi0
acpi_button0: <Power Button> on acpi0
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
pci0: <memory, RAM> at device 0.0 (no driver attached)
pci0: <memory, RAM> at device 0.1 (no driver attached)
pci0: <memory, RAM> at device 0.2 (no driver attached)
pci0: <memory, RAM> at device 0.3 (no driver attached)
pci0: <memory, RAM> at device 0.4 (no driver attached)
pci0: <memory, RAM> at device 0.5 (no driver attached)
pci0: <memory, RAM> at device 0.6 (no driver attached)
pci0: <memory, RAM> at device 0.7 (no driver attached)
nvidia0: <GeForce 6150> mem 0xfb000000-0xfbffffff,0xe0000000-0xefffffff,0xfc000000-0xfcffffff irq 16 at device 5.0 on pci0
nvidia0: [GIANT-LOCKED]
pci0: <memory, RAM> at device 9.0 (no driver attached)
(verbose dmesg for pcm is listed below.)


# uname -an
FreeBSD p1ah2 6.2-RC1 FreeBSD 6.2-RC1 #0: Mon Dec  4 16:48:53 JST 2006     root@p1ah2:/usr/obj/usr/src/sys/GENERIC  i386

# mixer
Mixer vol      is currently set to 75:75
Mixer pcm      is currently set to 75:75
Mixer speaker  is currently set to  0:0
Mixer line     is currently set to  0:0
Mixer mic      is currently set to  0:0
Mixer cd       is currently set to  0:0
Mixer rec      is currently set to  0:0
Recording source: mic

# sysctl hw.snd.verbose=2; cat /dev/sndstat
hw.snd.verbose: 1 -> 2
FreeBSD Audio Driver (newpcm: 64bit)
Installed devices:
pcm0: <NVidia MCP51 High Definition Audio Controller> at memory 0xfe028000 irq 20 kld snd_hda [20061203_0035] (1p/1r/1v channels duplex default)
        [pcm0:play:0:dsp0.p0]: spd 48000, fmt 0x10000010, flags 0x00101000, 0x00000040
        interrupts 0, underruns 0, feed 0, ready 0 [b:4096/2048/2|bs:131072/65536/2]
        {userland} -> feeder_vchan(0x10000010) -> feeder_volume(0x10000010) -> {hardware}
        [pcm0:record:0:dsp0.r0]: spd 0, fmt 0x00000000/0x00000008, flags 0x00000000, 0x00000000
        interrupts 0, overruns 0, feed 0, hfree 16384, sfree 0 [b:16384/8192/2|bs:0/0/0]
        {hardware} -> feeder_root(0x00000000) -> {userland}
        pcm0:play:0:dsp0.p0[pcm0:virtual:0:dsp0.v0]: spd 0, fmt 0x00000000/0x00000008, flags 0x10000000, 0x00000000
        interrupts 0, underruns 0, feed 0, ready 0 [b:0/0/0|bs:0/0/0]
        {userland} -> feeder_root(0x00000000) -> {hardware}

# sysctl hw.snd
hw.snd.latency_profile: 1
hw.snd.latency: 5
hw.snd.report_soft_formats: 1
hw.snd.feeder_buffersize: 16384
hw.snd.feeder_rate_round: 25
hw.snd.feeder_rate_max: 2016000
hw.snd.feeder_rate_min: 1
hw.snd.verbose: 2
hw.snd.maxautovchans: 4
hw.snd.default_unit: 0

# sysctl dev.pcm.0
dev.pcm.0.%desc: NVidia MCP51 High Definition Audio Controller
dev.pcm.0.%driver: pcm
dev.pcm.0.%location: slot=16 function=1 handle=\_SB_.PCI0.AZAD
dev.pcm.0.%pnpinfo: vendor=0x10de device=0x026c subvendor=0x1043 subdevice=0x81cb class=0x040300
dev.pcm.0.%parent: pci0
dev.pcm.0.wake: 0
dev.pcm.0.buffersize: 16384
dev.pcm.0.vchans: 1
dev.pcm.0.vchanrate: 48000
dev.pcm.0.vchanformat: s16le
dev.pcm.0.polling: 0

# kenv | grep pcm
hint.pcm.0.softpcmvol="1"

# dmesg | grep ^pcm
pcm0: <NVidia MCP51 High Definition Audio Controller> mem 0xfe028000-0xfe02bfff irq 20 at device 16.1 on pci0
pcm0: Reserved 0x4000 bytes for rid 0x10 type 3 at 0xfe028000
pcm0: [MPSAFE]
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: 0x000010ec
pcm0:        Device: 0x00000861
pcm0:      Revision: 0x00000003
pcm0:      Stepping: 0x000000c0
pcm0: PCI Subvendor: 0x81cb1043
pcm0:         Nodes: start=3 endnode=36 total=33
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: [ 3] Ctl nid=5 Bind to NONE
pcm0: [ 5] Ctl nid=7 DISABLED
pcm0: [ 9] Ctl nid=21 Bind to NONE
pcm0: [11] Ctl nid=21 childnid=20 Bind to NONE
pcm0: [12] Ctl nid=21 childnid=28 Bind to NONE
pcm0: [13] Ctl nid=22 childnid=3 Bind to NONE
pcm0: [14] Ctl nid=22 childnid=21 Bind to NONE
pcm0: [15] Ctl nid=23 childnid=4 Bind to NONE
pcm0: [16] Ctl nid=23 childnid=21 Bind to NONE
pcm0: [17] Ctl nid=24 childnid=5 Bind to NONE
pcm0: [18] Ctl nid=24 childnid=21 Bind to NONE
pcm0: [19] Ctl nid=25 childnid=6 Bind to NONE
pcm0: [20] Ctl nid=25 childnid=21 Bind to NONE
pcm0: [21] Ctl nid=26 childnid=4 Bind to NONE
pcm0: [22] Ctl nid=26 childnid=6 Bind to NONE
pcm0: [23] Ctl nid=26 childnid=21 Bind to NONE
pcm0: [24] Ctl nid=26 childnid=3 Bind to NONE
pcm0: [25] Ctl nid=27 childnid=4 Bind to NONE
pcm0: [26] Ctl nid=27 childnid=6 Bind to NONE
pcm0: [27] Ctl nid=27 childnid=21 Bind to NONE
pcm0: [28] Ctl nid=27 childnid=3 Bind to NONE
pcm0: [30] Ctl nid=28 childnid=15 Bind to NONE
pcm0: HDA_DEBUG: PCMDIR_PLAY setup...
pcm0: HDA_DEBUG: PCMDIR_REC setup...
pcm0: HDA_DEBUG: OSS mixer initialization...
pcm0: HDA_DEBUG: Enabling Soft PCM volume
pcm0: Mixer "vol": child=0x00000010
pcm0: Mixer "pcm": parent="vol"
pcm0: Mixer "speaker":
pcm0: Mixer "line":
pcm0: Mixer "mic":
pcm0: Mixer "cd":
pcm0: Mixer "rec":
pcm0: Soft PCM mixer ENABLED
pcm0: HDA_DEBUG: Registering PCM channels...
pcm0: sndbuf_setmap 3a752000, 4000; 0xe456a000 -> 3a752000
pcm0: sndbuf_setmap 3a737000, 4000; 0xe456e000 -> 3a737000
pcm0: <HDA Codec: Realtek ALC861>
pcm0: <HDA Codec ID: 0x10ec0861>
pcm0: <HDA Driver Revision: 20061203_0035>
pcm0: 
pcm0: HDA config/quirks: forcestereo
pcm0: 
pcm0: +-------------------+
pcm0: | DUMPING HDA NODES |
pcm0: +-------------------+
pcm0: 
pcm0: Default Parameter
pcm0: -----------------
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x000e0140
pcm0:        PCM size: 16 20 24
pcm0:        PCM rate: 48 96
pcm0:          IN amp: 0x00000000
pcm0:         OUT amp: 0x80000000
pcm0: 
pcm0:             nid: 3 [ANALOG]
pcm0:            name: audio output
pcm0:      widget_cap: 0x00000405
pcm0:     Parse flags: 0x00000001
pcm0:       Ctl flags: 0x00000011
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x000e0140
pcm0:        PCM size: 16 20 24
pcm0:        PCM rate: 48 96
pcm0:      Output amp: 0x80000000
pcm0:                  mute=1 step=0 size=0 offset=0
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 4 [ANALOG]
pcm0:            name: audio output
pcm0:      widget_cap: 0x00000405
pcm0:     Parse flags: 0x00000001
pcm0:       Ctl flags: 0x00000011
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x000e0140
pcm0:        PCM size: 16 20 24
pcm0:        PCM rate: 48 96
pcm0:      Output amp: 0x80000000
pcm0:                  mute=1 step=0 size=0 offset=0
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 5 [ANALOG]
pcm0:            name: audio output
pcm0:      widget_cap: 0x00000405
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x000e0140
pcm0:        PCM size: 16 20 24
pcm0:        PCM rate: 48 96
pcm0:      Output amp: 0x80000000
pcm0:                  mute=1 step=0 size=0 offset=0
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 6 [ANALOG]
pcm0:            name: audio output
pcm0:      widget_cap: 0x00000405
pcm0:     Parse flags: 0x00000001
pcm0:       Ctl flags: 0x00000011
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x000e0140
pcm0:        PCM size: 16 20 24
pcm0:        PCM rate: 48 96
pcm0:      Output amp: 0x80000000
pcm0:                  mute=1 step=0 size=0 offset=0
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 7 [DIGITAL] [DISABLED]
pcm0:            name: audio output
pcm0:      widget_cap: 0x00000605
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x000e0140
pcm0:        PCM size: 16 20 24
pcm0:        PCM rate: 48 96
pcm0:      Output amp: 0x80000000
pcm0:                  mute=1 step=0 size=0 offset=0
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 8 [ANALOG]
pcm0:            name: audio input
pcm0:      widget_cap: 0x0010051b
pcm0:     Parse flags: 0x00000006
pcm0:       Ctl flags: 0x00000800
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x00020140
pcm0:        PCM size: 16
pcm0:        PCM rate: 48 96
pcm0:       Input amp: 0x800b0d02
pcm0:                  mute=1 step=13 size=11 offset=2
pcm0:     connections: 6
pcm0:           |
pcm0:           + <- nid=13 [pin: Mic in (jack)] (selected)
pcm0:           |
pcm0:           + <- nid=12 [pin: line in (jack)]
pcm0:           |
pcm0:           + <- nid=15 [pin: headphones out (jack)]
pcm0:           |
pcm0:           + <- nid=16 [pin: Mic in (jack)]
pcm0:           |
pcm0:           + <- nid=17 [pin: CD (fixed)]
pcm0:           |
pcm0:           + <- nid=21 [audio mixer]
pcm0: 
pcm0:             nid: 9 [ANALOG]
pcm0:            name: vendor widget
pcm0:      widget_cap: 0x00f00000
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 10 [ANALOG]
pcm0:            name: vendor widget
pcm0:      widget_cap: 0x00f00000
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 11 [ANALOG]
pcm0:            name: pin: line out (jack)
pcm0:      widget_cap: 0x00400581
pcm0:     Parse flags: 0x00000001
pcm0:       Ctl flags: 0x00000000
pcm0:         Pin cap: 0x0000001f
pcm0:                  ISC TRQD HP OUT : UNSOL
pcm0:      Pin config: 0x01014010
pcm0:     Pin control: 0x00000040 OUT
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=22 [audio mixer]
pcm0: 
pcm0:             nid: 12 [ANALOG]
pcm0:            name: pin: line in (jack)
pcm0:      widget_cap: 0x00400581
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000041
pcm0:         Pin cap: 0x00000037
pcm0:                  ISC TRQD OUT IN : UNSOL
pcm0:      Pin config: 0x01813030
pcm0:     Pin control: 0x00000020 IN
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=25 [audio mixer]
pcm0: 
pcm0:             nid: 13 [ANALOG]
pcm0:            name: pin: Mic in (jack)
pcm0:      widget_cap: 0x00400581
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000081
pcm0:         Pin cap: 0x00000337
pcm0:                  ISC TRQD OUT IN : UNSOL
pcm0:      Pin config: 0x01a19831
pcm0:     Pin control: 0x00000020 IN
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=24 [audio mixer]
pcm0: 
pcm0:             nid: 14 [ANALOG] [DISABLED]
pcm0:            name: pin: speaker (none)
pcm0:      widget_cap: 0x00400581
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:         Pin cap: 0x00000017
pcm0:                  ISC TRQD OUT : UNSOL
pcm0:      Pin config: 0x411111f0
pcm0:     Pin control: 0x00000040 OUT
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=25 [audio mixer]
pcm0: 
pcm0:             nid: 15 [ANALOG]
pcm0:            name: pin: headphones out (jack)
pcm0:      widget_cap: 0x00400581
pcm0:     Parse flags: 0x00000001
pcm0:       Ctl flags: 0x00000000
pcm0:         Pin cap: 0x0000033f
pcm0:                  ISC TRQD HP OUT IN : UNSOL
pcm0:      Pin config: 0x0221401f
pcm0:     Pin control: 0x000000c0 HP OUT
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=26 [audio mixer]
pcm0: 
pcm0:             nid: 16 [ANALOG]
pcm0:            name: pin: Mic in (jack)
pcm0:      widget_cap: 0x00400581
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000081
pcm0:         Pin cap: 0x0000033f
pcm0:                  ISC TRQD HP OUT IN : UNSOL
pcm0:      Pin config: 0x02a1983e
pcm0:     Pin control: 0x00000020 IN
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=27 [audio mixer]
pcm0: 
pcm0:             nid: 17 [ANALOG]
pcm0:            name: pin: CD (fixed)
pcm0:      widget_cap: 0x00400001
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000101
pcm0:         Pin cap: 0x00000063
pcm0:                  ISC TRQD IN BAL
pcm0:      Pin config: 0x99330132
pcm0:     Pin control: 0x00000020 IN
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 18 [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: 0x01451120
pcm0:     Pin control: 0x00000040 OUT
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=7 [audio output] [DISABLED]
pcm0: 
pcm0:             nid: 19 [ANALOG]
pcm0:            name: vendor widget
pcm0:      widget_cap: 0x00f00000
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 20 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x0020010b
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000081
pcm0:       Input amp: 0x80000000
pcm0:                  mute=1 step=0 size=0 offset=0
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=13 [pin: Mic in (jack)]
pcm0:           |
pcm0:           + <- nid=16 [pin: Mic in (jack)]
pcm0: 
pcm0:             nid: 21 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x0020050f
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x000001c1
pcm0:      Output amp: 0x800b0c0c
pcm0:                  mute=1 step=12 size=11 offset=12
pcm0:       Input amp: 0x800b170c
pcm0:                  mute=1 step=23 size=11 offset=12
pcm0:     connections: 3
pcm0:           |
pcm0:           + <- nid=17 [pin: CD (fixed)]
pcm0:           |
pcm0:           + <- nid=20 [audio mixer]
pcm0:           |
pcm0:           + <- nid=28 [audio mixer]
pcm0: 
pcm0:             nid: 22 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x0020010b
pcm0:     Parse flags: 0x00000001
pcm0:       Ctl flags: 0x000001d1
pcm0:       Input amp: 0x80000000
pcm0:                  mute=1 step=0 size=0 offset=0
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=3 [audio output]
pcm0:           |
pcm0:           + <- nid=21 [audio mixer]
pcm0: 
pcm0:             nid: 23 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x0020010b
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:       Input amp: 0x80000000
pcm0:                  mute=1 step=0 size=0 offset=0
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=4 [audio output]
pcm0:           |
pcm0:           + <- nid=21 [audio mixer]
pcm0: 
pcm0:             nid: 24 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x0020010b
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:       Input amp: 0x80000000
pcm0:                  mute=1 step=0 size=0 offset=0
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=5 [audio output]
pcm0:           |
pcm0:           + <- nid=21 [audio mixer]
pcm0: 
pcm0:             nid: 25 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x0020010b
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:       Input amp: 0x80000000
pcm0:                  mute=1 step=0 size=0 offset=0
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=6 [audio output]
pcm0:           |
pcm0:           + <- nid=21 [audio mixer]
pcm0: 
pcm0:             nid: 26 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x0020010b
pcm0:     Parse flags: 0x00000001
pcm0:       Ctl flags: 0x00000011
pcm0:       Input amp: 0x80000000
pcm0:                  mute=1 step=0 size=0 offset=0
pcm0:     connections: 4
pcm0:           |
pcm0:           + <- nid=4 [audio output]
pcm0:           |
pcm0:           + <- nid=6 [audio output]
pcm0:           |
pcm0:           + <- nid=21 [audio mixer]
pcm0:           |
pcm0:           + <- nid=3 [audio output]
pcm0: 
pcm0:             nid: 27 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x0020010b
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:       Input amp: 0x80000000
pcm0:                  mute=1 step=0 size=0 offset=0
pcm0:     connections: 4
pcm0:           |
pcm0:           + <- nid=4 [audio output]
pcm0:           |
pcm0:           + <- nid=6 [audio output]
pcm0:           |
pcm0:           + <- nid=21 [audio mixer]
pcm0:           |
pcm0:           + <- nid=3 [audio output]
pcm0: 
pcm0:             nid: 28 [ANALOG]
pcm0:            name: audio mixer
pcm0:      widget_cap: 0x0020010b
pcm0:     Parse flags: 0x00000002
pcm0:       Ctl flags: 0x00000041
pcm0:       Input amp: 0x80000000
pcm0:                  mute=1 step=0 size=0 offset=0
pcm0:     connections: 2
pcm0:           |
pcm0:           + <- nid=12 [pin: line in (jack)]
pcm0:           |
pcm0:           + <- nid=15 [pin: headphones out (jack)]
pcm0: 
pcm0:             nid: 29 [ANALOG]
pcm0:            name: vendor widget
pcm0:      widget_cap: 0x00f00000
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 30 [ANALOG]
pcm0:            name: vendor widget
pcm0:      widget_cap: 0x00f00000
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 31 [ANALOG] [DISABLED]
pcm0:            name: pin: speaker (none)
pcm0:      widget_cap: 0x00400581
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:         Pin cap: 0x00000017
pcm0:                  ISC TRQD OUT : UNSOL
pcm0:      Pin config: 0x411111f0
pcm0:     Pin control: 0x00000040 OUT
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=24 [audio mixer]
pcm0: 
pcm0:             nid: 32 [ANALOG] [DISABLED]
pcm0:            name: pin: speaker (none)
pcm0:      widget_cap: 0x00400581
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:         Pin cap: 0x00000017
pcm0:                  ISC TRQD OUT : UNSOL
pcm0:      Pin config: 0x411111f0
pcm0:     Pin control: 0x00000040 OUT
pcm0:     connections: 1
pcm0:           |
pcm0:           + <- nid=23 [audio mixer]
pcm0: 
pcm0:             nid: 33 [ANALOG]
pcm0:            name: vendor widget
pcm0:      widget_cap: 0x00f00000
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 34 [ANALOG]
pcm0:            name: vendor widget
pcm0:      widget_cap: 0x00f00000
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000000
pcm0:     connections: 0
pcm0: 
pcm0:             nid: 35 [ANALOG]
pcm0:            name: beep widget
pcm0:      widget_cap: 0x0070000c
pcm0:     Parse flags: 0x00000000
pcm0:       Ctl flags: 0x00000021
pcm0:      Output amp: 0x800b0f0f
pcm0:                  mute=1 step=15 size=11 offset=15
pcm0:     connections: 0
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=0x00000011 ossdev=4
pcm0:   3: nid=5 dir=0x1 index=0 ossmask=0x00000000 ossdev=0
pcm0:   4: nid=6 dir=0x1 index=0 ossmask=0x00000011 ossdev=4
pcm0:   5: nid=7 dir=0x1 index=0 ossmask=0x00000000 ossdev=0 [DISABLED]
pcm0:   6: nid=8 dir=0x2 index=0 ossmask=0x00000800 ossdev=0
pcm0:   7: nid=20 cnid=13 dir=0x2 index=0 ossmask=0x00000081 ossdev=7
pcm0:   8: nid=20 cnid=16 dir=0x2 index=1 ossmask=0x00000081 ossdev=7
pcm0:   9: nid=21 dir=0x1 index=0 ossmask=0x00000000 ossdev=0
pcm0:  10: nid=21 cnid=17 dir=0x2 index=0 ossmask=0x00000101 ossdev=8
pcm0:  11: nid=21 cnid=20 dir=0x2 index=1 ossmask=0x00000000 ossdev=0
pcm0:  12: nid=21 cnid=28 dir=0x2 index=2 ossmask=0x00000000 ossdev=0
pcm0:  13: nid=22 cnid=3 dir=0x2 index=0 ossmask=0x00000000 ossdev=0
pcm0:  14: nid=22 cnid=21 dir=0x2 index=1 ossmask=0x00000000 ossdev=0
pcm0:  15: nid=23 cnid=4 dir=0x2 index=0 ossmask=0x00000000 ossdev=0
pcm0:  16: nid=23 cnid=21 dir=0x2 index=1 ossmask=0x00000000 ossdev=0
pcm0:  17: nid=24 cnid=5 dir=0x2 index=0 ossmask=0x00000000 ossdev=0
pcm0:  18: nid=24 cnid=21 dir=0x2 index=1 ossmask=0x00000000 ossdev=0
pcm0:  19: nid=25 cnid=6 dir=0x2 index=0 ossmask=0x00000000 ossdev=0
pcm0:  20: nid=25 cnid=21 dir=0x2 index=1 ossmask=0x00000000 ossdev=0
pcm0:  21: nid=26 cnid=4 dir=0x2 index=0 ossmask=0x00000000 ossdev=0
pcm0:  22: nid=26 cnid=6 dir=0x2 index=1 ossmask=0x00000000 ossdev=0
pcm0:  23: nid=26 cnid=21 dir=0x2 index=2 ossmask=0x00000000 ossdev=0
pcm0:  24: nid=26 cnid=3 dir=0x2 index=3 ossmask=0x00000000 ossdev=0
pcm0:  25: nid=27 cnid=4 dir=0x2 index=0 ossmask=0x00000000 ossdev=0
pcm0:  26: nid=27 cnid=6 dir=0x2 index=1 ossmask=0x00000000 ossdev=0
pcm0:  27: nid=27 cnid=21 dir=0x2 index=2 ossmask=0x00000000 ossdev=0
pcm0:  28: nid=27 cnid=3 dir=0x2 index=3 ossmask=0x00000000 ossdev=0
pcm0:  29: nid=28 cnid=12 dir=0x2 index=0 ossmask=0x00000041 ossdev=6
pcm0:  30: nid=28 cnid=15 dir=0x2 index=1 ossmask=0x00000000 ossdev=0
pcm0:  31: nid=35 dir=0x1 index=0 ossmask=0x00000021 ossdev=5
pcm0: 
pcm0: +-----------------------------------+
pcm0: | DUMPING HDA AUDIO/VOLUME CONTROLS |
pcm0: +-----------------------------------+
pcm0: 
pcm0: Master Volume (OSS: vol)
pcm0:    |
pcm0:    +-  nid:  3 index:  0           mute: 1 step:   0 size:   0 off:   0 dir=0x1 ossmask=0x00000011
pcm0:    |
pcm0:    +-  nid:  4 index:  0           mute: 1 step:   0 size:   0 off:   0 dir=0x1 ossmask=0x00000011
pcm0:    |
pcm0:    +-  nid:  6 index:  0           mute: 1 step:   0 size:   0 off:   0 dir=0x1 ossmask=0x00000011
pcm0:    |
pcm0:    +-  nid: 20 index:  0 (nid: 13) mute: 1 step:   0 size:   0 off:   0 dir=0x2 ossmask=0x00000081
pcm0:    |
pcm0:    +-  nid: 20 index:  1 (nid: 16) mute: 1 step:   0 size:   0 off:   0 dir=0x2 ossmask=0x00000081
pcm0:    |
pcm0:    +-  nid: 21 index:  0 (nid: 17) mute: 1 step:  23 size:  11 off:  12 dir=0x2 ossmask=0x00000101
pcm0:    |
pcm0:    +-  nid: 28 index:  0 (nid: 12) mute: 1 step:   0 size:   0 off:   0 dir=0x2 ossmask=0x00000041
pcm0:    |
pcm0:    +-  nid: 35 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:   0 size:   0 off:   0 dir=0x1 ossmask=0x00000011
pcm0:    |
pcm0:    +-  nid:  4 index:  0           mute: 1 step:   0 size:   0 off:   0 dir=0x1 ossmask=0x00000011
pcm0:    |
pcm0:    +-  nid:  6 index:  0           mute: 1 step:   0 size:   0 off:   0 dir=0x1 ossmask=0x00000011
pcm0: 
pcm0: CD Volume (OSS: cd)
pcm0:    |
pcm0:    +-  nid: 21 index:  0 (nid: 17) mute: 1 step:  23 size:  11 off:  12 dir=0x2 ossmask=0x00000101
pcm0: 
pcm0: Microphone Volume (OSS: mic)
pcm0:    |
pcm0:    +-  nid: 20 index:  0 (nid: 13) mute: 1 step:   0 size:   0 off:   0 dir=0x2 ossmask=0x00000081
pcm0:    |
pcm0:    +-  nid: 20 index:  1 (nid: 16) mute: 1 step:   0 size:   0 off:   0 dir=0x2 ossmask=0x00000081
pcm0: 
pcm0: Line-in Volume (OSS: line)
pcm0:    |
pcm0:    +-  nid: 28 index:  0 (nid: 12) mute: 1 step:   0 size:   0 off:   0 dir=0x2 ossmask=0x00000041
pcm0: 
pcm0: Recording Level (OSS: rec)
pcm0:    |
pcm0:    +-  nid:  8 index:  0           mute: 1 step:  13 size:  11 off:   2 dir=0x2 ossmask=0x00000800
pcm0: 
pcm0: Speaker/Beep (OSS: speaker)
pcm0:    |
pcm0:    +-  nid: 35 index:  0           mute: 1 step:  15 size:  11 off:  15 dir=0x1 ossmask=0x00000021
pcm0: 
pcm0: Playback path:
pcm0: 
pcm0:     nid=11 [pin: line out (jack)]
pcm0:       ^
pcm0:       |
pcm0:       +-----<------+
pcm0:                    ^
pcm0:                    |
pcm0:                  nid=22 [audio mixer]
pcm0:                    ^
pcm0:                    |
pcm0:                  nid=3 [audio output]
pcm0: 
pcm0:     nid=15 [pin: headphones out (jack)]
pcm0:       ^
pcm0:       |
pcm0:       +-----<------+
pcm0:                    ^
pcm0:                    |
pcm0:                  nid=26 [audio mixer]
pcm0:                    ^
pcm0:                    |
pcm0:                  nid=4 [audio output]
pcm0: 
pcm0: Recording sources:
pcm0: 
pcm0:     nid=8 [audio input]
pcm0:       |
pcm0:       + <- nid=13 [pin: Mic in (jack)] [recsrc: vol, mic]
pcm0:       |
pcm0:       + <- nid=12 [pin: line in (jack)] [recsrc: vol, line]
pcm0:       |
pcm0:       + <- nid=15 [pin: headphones out (jack)]
pcm0:       |
pcm0:       + <- nid=16 [pin: Mic in (jack)] [recsrc: vol, mic]
pcm0:       |
pcm0:       + <- nid=17 [pin: CD (fixed)] [recsrc: vol, cd]
pcm0:       |
pcm0:       + <- nid=21 [audio mixer] [recsrc: vol, line, mic, cd]
pcm0: 
pcm0: +--------------------------------------+
pcm0: | DUMPING PCM Playback/Record Channels |
pcm0: +--------------------------------------+
pcm0: 
pcm0:    PCM Playback: 1
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x000e0140
pcm0:        PCM size: 16 20 24
pcm0:        PCM rate: 48 96
pcm0:             DAC: 3 4 6
pcm0: 
pcm0:      PCM Record: 1
pcm0:      Stream cap: 0x00000001
pcm0:          Format: PCM
pcm0:         PCM cap: 0x00020140
pcm0:        PCM size: 16
pcm0:        PCM rate: 48 96
pcm0:             ADC: 8




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?sa6mz612cxq.wl%tamaru>