On Tue, May 12, 2009 at 09:57:33PM +0000, Jacob Meuser wrote:
> here's a patch to power down unused widgets.  should be safe, but my
> devices don't support this (about half of all azalia codecs support power
> modes on the individual widgets) so please test that this doesn't somehow
> break the ability to use your soundcard.

The sound on my ThinkPad X61s no longer seems to work with this patch.

=====[ mixerctl -v (same w/ and w/o patch) ]=====
inputs.dac=186,186 
inputs.dac2=186,186 
inputs.hp_source=sel6,sel5  { sel6 sel5 }
inputs.spkr_source=dac2,sel5  { dac2 sel5 }
record.adc2_source=mic2  [ mic mic2 ]
record.adc2_mute=on  [ off on ]
record.adc2=124,124 
record.adc_source=mic  [ mic mic2 ]
record.adc_mute=on  [ off on ]
record.adc=124,124 
inputs.sel3_source=dac  [ dac dac2 ]
inputs.sel4_source=dac  [ dac dac2 ]
inputs.beep_mute=off  [ off on ]
inputs.beep=119 
outputs.hp_mute=off  [ off on ]
outputs.hp_boost=off  [ off on ]
outputs.spkr_mute=off  [ off on ]
outputs.spkr_boost=off  [ off on ]
outputs.spkr_eapd=on  [ off on ]
inputs.mic=85,85 
outputs.mic_dir=input-vr80  [ none input input-vr0 input-vr50 input-vr80 
input-vr100 ]
inputs.mic2=85,85 
outputs.mic2_dir=input-vr80  [ none input input-vr0 input-vr50 input-vr80 
input-vr100 ]
outputs.mic3_mute=on  [ off on ]
outputs.mic3_dir=input-vr80  [ none output input input-vr0 input-vr50 
input-vr80 input-vr100 ]
outputs.vendor_source=hp  [ hp spkr adc2 adc sel3 sel4 beep hp ]
inputs.mix4_source=sel3,sel5  { sel3 sel5 }
inputs.mix6_source=mic,mic2  { mic mic2 }
inputs.mix6_mic=120,120 
inputs.mix6_mic2=120,120 
inputs.sel5_source=mix6  [ mix6 ]
outputs.sel5_mute=on  [ off on ]
outputs.sel5=120,120 
inputs.sel6_source=dac  [ dac dac2 ]
inputs.sel7_source=dac  [ dac dac2 ]
inputs.mic3_source=sel7,sel5  { sel7 sel5 }
inputs.mic3=85,85 
outputs.vendor2_source=mic  [ mic mic2 mic3 ]
outputs.hp_sense=unplugged  [ unplugged plugged ]
outputs.mic_sense=unplugged  [ unplugged plugged ]
outputs.mic3_sense=unplugged  [ unplugged plugged ]
outputs.spkr_muters=hp,mic,mic3  { hp mic mic3 }
outputs.master=190,190 
outputs.master.mute=off  [ off on ]
outputs.master.slaves=dac,dac2,hp,spkr  { dac dac2 beep hp spkr mic3 sel5 mic3 }
record.volume=124,124 
record.volume.mute=on  [ off on ]
record.volume.slaves=adc2,adc  { adc2 adc mic mic2 }

=====[ GENERIC.MP + patch + AZALIA_DEBUG ]=====
OpenBSD 4.5-current (AZALIA.MP) #0: Wed May 13 18:54:27 EDT 2009
    d...@ares.localdomain:/usr/src/sys/arch/amd64/compile/AZALIA.MP
real mem = 2119892992 (2021MB)
avail mem = 2046382080 (1951MB)
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.4 @ 0xe0010 (63 entries)
bios0: vendor LENOVO version "7NETB8WW (2.18 )" date 09/26/2008
bios0: LENOVO 7668CTO
acpi0 at bios0: rev 2
acpi0: tables DSDT FACP SSDT ECDT TCPA APIC MCFG HPET SLIC BOOT ASF! SSDT SSDT 
SSDT SSDT SSDT
acpi0: wakeup devices LID_(S3) SLPB(S3) DURT(S3) IGBE(S4) EXP0(S4) EXP1(S4) 
EXP2(S4) EXP3(S4) EXP4(S4) PCI1(S4) USB0(S3) USB1(S3) USB2(S3) USB3(S3) 
USB4(S3) EHC0(S3) EHC1(S3) HDEF(S4)
acpitimer0 at acpi0: 3579545 Hz, 24 bits
acpimadt0 at acpi0 addr 0xfee00000: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: Intel(R) Core(TM)2 Duo CPU L7500 @ 1.60GHz, 1596.31 MHz
cpu0: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,MWAIT,DS-CPL,VMX,EST,TM2,CX16,xTPR,NXE,LONG
cpu0: 4MB 64b/line 16-way L2 cache
cpu0: apic clock running at 199MHz
cpu1 at mainbus0: apid 1 (application processor)
cpu1: Intel(R) Core(TM)2 Duo CPU L7500 @ 1.60GHz, 1596.00 MHz
cpu1: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,DS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,SBF,SSE3,MWAIT,DS-CPL,VMX,EST,TM2,CX16,xTPR,NXE,LONG
cpu1: 4MB 64b/line 16-way L2 cache
ioapic0 at mainbus0 apid 1 pa 0xfec00000, version 20, 24 pins
ioapic0: misconfigured as apic 2, remapped to apid 1
acpihpet0 at acpi0: 14318179 Hz
acpiprt0 at acpi0: bus 0 (PCI0)
acpiprt1 at acpi0: bus -1 (AGP_)
acpiprt2 at acpi0: bus 2 (EXP0)
acpiprt3 at acpi0: bus 3 (EXP1)
acpiprt4 at acpi0: bus -1 (EXP2)
acpiprt5 at acpi0: bus -1 (EXP3)
acpiprt6 at acpi0: bus -1 (EXP4)
acpiprt7 at acpi0: bus 5 (PCI1)
acpiec0 at acpi0
acpicpu0 at acpi0: C3, C2, C1, PSS
acpicpu1 at acpi0: C3, C2, C1, PSS
acpitz0 at acpi0: critical temperature 127 degC
acpitz1 at acpi0: critical temperature 99 degC
acpibtn0 at acpi0: LID_
acpibtn1 at acpi0: SLPB
acpibat0 at acpi0: BAT0 model "42T4631" serial  4147 type LION oem "SONY"
acpibat1 at acpi0: BAT1 not present
acpibat2 at acpi0: BAT2 not present
acpiac0 at acpi0: AC unit online
acpithinkpad0 at acpi0
acpidock at acpi0 not configured
acpivideo at acpi0 not configured
acpivideo at acpi0 not configured
cpu0: Enhanced SpeedStep 1596 MHz: speeds: 1601, 1600, 1200, 800 MHz
pci0 at mainbus0 bus 0
pchb0 at pci0 dev 0 function 0 "Intel GM965 Host" rev 0x0c
vga1 at pci0 dev 2 function 0 "Intel GM965 Video" rev 0x0c
wsdisplay0 at vga1 mux 1: console (80x25, vt100 emulation)
wsdisplay0: screen 1-5 added (80x25, vt100 emulation)
intagp0 at vga1
agp0 at intagp0: aperture at 0xe0000000, size 0x10000000
inteldrm0 at vga1: apic 1 int 16 (irq 10)
drm0 at inteldrm0
"Intel GM965 Video" rev 0x0c at pci0 dev 2 function 1 not configured
em0 at pci0 dev 25 function 0 "Intel ICH8 IGP M AMT" rev 0x03: apic 1 int 20 
(irq 11), address 00:1f:16:3a:0d:00
uhci0 at pci0 dev 26 function 0 "Intel 82801H USB" rev 0x03: apic 1 int 20 (irq 
11)
uhci1 at pci0 dev 26 function 1 "Intel 82801H USB" rev 0x03: apic 1 int 21 (irq 
11)
ehci0 at pci0 dev 26 function 7 "Intel 82801H USB" rev 0x03: apic 1 int 22 (irq 
11)
usb0 at ehci0: USB revision 2.0
uhub0 at usb0 "Intel EHCI root hub" rev 2.00/1.00 addr 1
azalia0 at pci0 dev 27 function 0 "Intel 82801H HD Audio" rev 0x03: apic 1 int 
17 (irq 11)
azalia0: host: High Definition Audio rev. 1.0
azalia0: host: 4 output, 4 input, and 0 bidi streams
azalia_attach: resetting
azalia_attach: reset counter = 5000
azalia_attach: reset counter = 4986
azalia0: found a codec at #0
azalia0: found a codec at #1
azalia_init_corb: CORB allocation succeeded.
azalia_init_corb: CORBWP=0; size=256
azalia_init_rirb: RIRB allocation succeeded.
azalia_init_rirb: RIRBRP=0, size=256
azalia0: codec[0] vid 0x11d41984, subid 0x20ac17aa, rev. 4.0, HDA version 1.0
azalia0: nidstart=1 #functions=1
azalia_codec_init: FTYPE result = 0x00000001
azalia_codec_init: There are 37 widgets in the audio function.
        encodings=1<PCM>
        PCM 
formats=e07ff<24bit,20bit,16bit,192kHz,176.4kHz,96kHz,88.2kHz,48kHz,44.1kHz,32kHz,22.05kHz,16kHz,11.025kHz,8kHz>
        inamp: mute=1 size=0 steps=0 offset=0
        outamp: mute=0 size=5 steps=39 offset=39
        gpio: wake=0 unsol=1 gpis=0 gpos=0 gpios=3
azalia0: dac02 wcap=30311<DIGITAL,CONNLIST,FORMATOV,STEREO>
        encodings=5<AC3,PCM>
        PCM 
formats=e07e0<24bit,20bit,16bit,192kHz,176.4kHz,96kHz,88.2kHz,48kHz,44.1kHz>
        connections=0x1,0x8,0x9; selected=0x1
azalia0: dac03 wcap=405<POWER,OUTAMP,STEREO>
azalia0: dac04 wcap=405<POWER,OUTAMP,STEREO>
azalia0: adc05 wcap=10050b<POWER,CONNLIST,AMPOV,INAMP,STEREO>
        inamp: mute=1 size=5 steps=54 offset=39
        connections=0x17; selected=0x17
azalia0: adc06 wcap=10050b<POWER,CONNLIST,AMPOV,INAMP,STEREO>
        inamp: mute=1 size=5 steps=54 offset=39
        connections=0x18; selected=0x18
azalia0: mix07 wcap=200103<CONNLIST,INAMP,STEREO>
        connections=0x22,0x21; selected=0x22
azalia0: adc08 wcap=100501<POWER,CONNLIST,STEREO>
        connections=0xc; selected=0xc
azalia0: adc09 wcap=100501<POWER,CONNLIST,STEREO>
        connections=0xd; selected=0xd
azalia0: mix0a wcap=200103<CONNLIST,INAMP,STEREO>
        connections=0x4,0x21; selected=0x4
azalia0: mix0b wcap=200103<CONNLIST,INAMP,STEREO>
        connections=0xf,0x21; selected=0xf
azalia0: sel0c wcap=30010d<CONNLIST,AMPOV,OUTAMP,STEREO>
        outamp: mute=1 size=5 steps=54 offset=39
        connections=0x14,0x15,0x16,0x17; selected=0x14
azalia0: sel0d wcap=30010d<CONNLIST,AMPOV,OUTAMP,STEREO>
        outamp: mute=1 size=5 steps=54 offset=39
        connections=0x14,0x15,0x16,0x17; selected=0x14
azalia0: sel0e wcap=300101<CONNLIST,STEREO>
        connections=0x3,0x4; selected=0x3
azalia0: sel0f wcap=300101<CONNLIST,STEREO>
        connections=0x3,0x4; selected=0x3
azalia0: beep10 wcap=70000c<AMPOV,OUTAMP>
        outamp: mute=1 size=11 steps=15 offset=15
azalia0: green11 wcap=40018d<CONNLIST,UNSOL,AMPOV,OUTAMP,STEREO>
        cap=1f<OUTPUT,HEADPHONE,PRESENCE,TRIGGER,IMPEDANCE>
        [01/15] color=green device=hp conn=jack conntype=1/8
        location=right chassis=external special=none
        outamp: mute=1 size=0 steps=0 offset=0
        connections=0x7; selected=0x7
azalia0: unknown12 wcap=40058d<POWER,CONNLIST,UNSOL,AMPOV,OUTAMP,STEREO>
        cap=1001f<EAPD,OUTPUT,HEADPHONE,PRESENCE,TRIGGER,IMPEDANCE>
        [01/00] color=unknown device=spkr conn=fixed conntype=analog
        location=n/a chassis=internal special=none
        outamp: mute=1 size=0 steps=0 offset=0
        connections=0xa; selected=0xa
azalia0: unknown13 wcap=40050c<POWER,CONNLIST,AMPOV,OUTAMP>
        cap=10010<EAPD,OUTPUT>
        [15/00] color=unknown device=spkr conn=none conntype=atapi
        location=rear chassis=internal special=none
        outamp: mute=1 size=5 steps=31 offset=31
        connections=0x1f; selected=0x1f
azalia0: red14 wcap=40008b<UNSOL,AMPOV,INAMP,STEREO>
        
cap=3727<VREF100,VREF80,VREFGND,VREF50,VREFHIZ,INPUT,PRESENCE,TRIGGER,IMPEDANCE>
        [02/01] color=red device=mic conn=jack conntype=1/8
        location=right chassis=external special=none
        inamp: mute=0 size=39 steps=3 offset=0
azalia0: unknown15 wcap=40008b<UNSOL,AMPOV,INAMP,STEREO>
        
cap=3727<VREF100,VREF80,VREFGND,VREF50,VREFHIZ,INPUT,PRESENCE,TRIGGER,IMPEDANCE>
        [02/14] color=unknown device=mic conn=fixed conntype=analog
        location=n/a chassis=internal special=none
        inamp: mute=0 size=39 steps=3 offset=0
azalia0: unknown16 wcap=40018d<CONNLIST,UNSOL,AMPOV,OUTAMP,STEREO>
        cap=37<INPUT,OUTPUT,PRESENCE,TRIGGER,IMPEDANCE>
        [15/00] color=unknown device=cd conn=none conntype=atapi
        location=spec2 chassis=internal special=atapi
        outamp: mute=1 size=0 steps=0 offset=0
        connections=0xb; selected=0xb
azalia0: unknown17 wcap=400001<STEREO>
        cap=20<INPUT>
        [15/00] color=unknown device=mic conn=none conntype=digital
        location=top chassis=internal special=none
azalia0: unknown18 wcap=400001<STEREO>
        cap=20<INPUT>
        [15/00] color=unknown device=mic conn=none conntype=digital
        location=top chassis=internal special=none
azalia0: pow19 wcap=500500<POWER,CONNLIST>
        connections=0x20,0x21; selected=0x20
azalia0: black1a wcap=400000
        cap=20<INPUT>
        [15/00] color=black device=other conn=fixed conntype=atapi
        location=rear chassis=internal special=none
azalia0: black1b wcap=40030d<DIGITAL,CONNLIST,AMPOV,OUTAMP,STEREO>
        cap=10<OUTPUT>
        [15/00] color=black device=SPDIF conn=none conntype=rca
        location=rear chassis=separate special=none
        outamp: mute=1 size=5 steps=39 offset=39
        connections=0x2; selected=0x2
azalia0: red1c wcap=40018d<CONNLIST,UNSOL,AMPOV,OUTAMP,STEREO>
        
cap=3737<VREF100,VREF80,VREFGND,VREF50,VREFHIZ,INPUT,OUTPUT,PRESENCE,TRIGGER,IMPEDANCE>
        [02/00] color=red device=mic conn=jack conntype=1/8
        location=rear chassis=separate special=none
        outamp: mute=1 size=0 steps=0 offset=0
        connections=0x24; selected=0x24
azalia0: vendor1d wcap=f00100<CONNLIST>
        connections=0x7,0x19,0xa,0xb,0xc,0xd,0xe,0xf,0x10,0x11; selected=0x7
azalia0: mix1e wcap=200103<CONNLIST,INAMP,STEREO>
        connections=0xe,0x21; selected=0xe
azalia0: mix1f wcap=200100<CONNLIST>
        connections=0x1e; selected=0x1e
azalia0: mix20 wcap=20010b<CONNLIST,AMPOV,INAMP,STEREO>
        inamp: mute=1 size=5 steps=31 offset=23
        connections=0x14,0x15,0x16,0x17; selected=0x14
azalia0: sel21 wcap=30010d<CONNLIST,AMPOV,OUTAMP,STEREO>
        outamp: mute=1 size=5 steps=31 offset=31
        connections=0x20; selected=0x20
azalia0: sel22 wcap=300101<CONNLIST,STEREO>
        connections=0x3,0x4; selected=0x3
azalia0: sel23 wcap=300101<CONNLIST,STEREO>
        connections=0x3,0x4; selected=0x3
azalia0: mix24 wcap=200103<CONNLIST,INAMP,STEREO>
        connections=0x23,0x21; selected=0x23
azalia0: sel25 wcap=30010d<CONNLIST,AMPOV,OUTAMP,STEREO>
        outamp: mute=0 size=39 steps=3 offset=0
        connections=0x1c; selected=0x1c
azalia0: vendor26 wcap=f00100<CONNLIST>
        connections=0x14,0x15,0x1c; selected=0x14
azalia_codec_sort_pins: analog out pins: 0x11->0x03 0x1c->0x03
azalia_codec_sort_pins: digital out pins:
azalia_codec_sort_pins: analog in pins: 0x1c->0xffffffff 0x14->0x09 0x15->0x08
azalia_codec_sort_pins: digital in pins:
azalia0: dacgroup[0]: 03 04
azalia0: adcgroup[0]: 09 08
azalia0: codec[1] vid 0x14f12bfa, subid 0x20ac17aa, rev. 0.0, HDA version 0.9
azalia0: nidstart=2 #functions=1
azalia_codec_init: FTYPE result = 0x00000102
azalia0: codec[1]: No audio function groups
azalia0: RIRB time out
azalia0: codecs: Analog Devices AD1984, Conexant/0x2bfa, using Analog Devices 
AD1984
audio0 at azalia0
ppb0 at pci0 dev 28 function 0 "Intel 82801H PCIE" rev 0x03: apic 1 int 20 (irq 
11)
pci1 at ppb0 bus 2
ppb1 at pci0 dev 28 function 1 "Intel 82801H PCIE" rev 0x03: apic 1 int 21 (irq 
11)
pci2 at ppb1 bus 3
iwn0 at pci2 dev 0 function 0 "Intel Wireless WiFi Link 4965" rev 0x61: apic 1 
int 17 (irq 11), MIMO 2T3R, MoW1, address 00:21:5c:89:21:b7
uhci2 at pci0 dev 29 function 0 "Intel 82801H USB" rev 0x03: apic 1 int 16 (irq 
10)
uhci3 at pci0 dev 29 function 1 "Intel 82801H USB" rev 0x03: apic 1 int 17 (irq 
11)
ehci1 at pci0 dev 29 function 7 "Intel 82801H USB" rev 0x03: apic 1 int 19 (irq 
11)
usb1 at ehci1: USB revision 2.0
uhub1 at usb1 "Intel EHCI root hub" rev 2.00/1.00 addr 1
ppb2 at pci0 dev 30 function 0 "Intel 82801BAM Hub-to-PCI" rev 0xf3
pci3 at ppb2 bus 5
cbb0 at pci3 dev 0 function 0 "Ricoh 5C476 CardBus" rev 0xba: apic 1 int 16 
(irq 10)
"Ricoh 5C832 Firewire" rev 0x04 at pci3 dev 0 function 1 not configured
sdhc0 at pci3 dev 0 function 2 "Ricoh 5C822 SD/MMC" rev 0x21: apic 1 int 18 
(irq 11)
sdmmc0 at sdhc0
cardslot0 at cbb0 slot 0 flags 0
cardbus0 at cardslot0: bus 6 device 0 cacheline 0x0, lattimer 0xb0
pcmcia0 at cardslot0
pcib0 at pci0 dev 31 function 0 "Intel 82801HEM LPC" rev 0x03
pciide0 at pci0 dev 31 function 2 "Intel 82801HBM SATA" rev 0x03: DMA, channel 
0 wired to compatibility, channel 1 wired to compatibility
wd0 at pciide0 channel 0 drive 0: <INTEL SSDSA2MH080G1GC>
wd0: 16-sector PIO, LBA48, 76319MB, 156301488 sectors
wd0(pciide0:0:0): using PIO mode 4, Ultra-DMA mode 5
ichiic0 at pci0 dev 31 function 3 "Intel 82801H SMBus" rev 0x03: apic 1 int 23 
(irq 11)
iic0 at ichiic0
usb2 at uhci0: USB revision 1.0
uhub2 at usb2 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb3 at uhci1: USB revision 1.0
uhub3 at usb3 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb4 at uhci2: USB revision 1.0
uhub4 at usb4 "Intel UHCI root hub" rev 1.00/1.00 addr 1
usb5 at uhci3: USB revision 1.0
uhub5 at usb5 "Intel UHCI root hub" rev 1.00/1.00 addr 1
isa0 at pcib0
isadma0 at isa0
pckbc0 at isa0 port 0x60/5
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplay0
pms0 at pckbc0 (aux slot)
pckbc0: using irq 12 for aux slot
wsmouse0 at pms0 mux 0
pcppi0 at isa0 port 0x61
midi0 at pcppi0: <PC speaker>
spkr0 at pcppi0
aps0 at isa0 port 0x1600/31
mtrr: Pentium Pro MTRR support
ugen0 at uhub2 port 2 "STMicroelectronics Biometric Coprocessor" rev 1.00/0.01 
addr 2
softraid0 at root
root on wd0a swap on wd0b dump on wd0b

Reply via email to