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