[alsa-devel] HDA intel, wired headset w/mic, jack mic detect
Kevin Hilman
khilman at ti.com
Fri Mar 9 18:16:04 CET 2012
Takashi Iwai <tiwai at suse.de> writes:
> At Tue, 06 Mar 2012 12:25:12 -0800,
> Kevin Hilman wrote:
>>
>> Takashi Iwai <tiwai at suse.de> writes:
>>
>> > At Tue, 6 Mar 2012 09:28:12 +0800,
>> > Raymond Yau wrote:
>> >>
>> >> 2012/3/6, Kevin Hilman <khilman at ti.com>:
>> >> > Raymond Yau <superquad.vortex2 at gmail.com> writes:
>> >> >
>> >> >> 2012/3/3, Kevin Hilman <khilman at ti.com>:
>> >> >>> Raymond Yau <superquad.vortex2 at gmail.com> writes:
>> >> >>>
>> >> >>>> 2012/3/2, Kevin Hilman <khilman at ti.com>:
>> >> >>>>
>> >> >>>>
>> >> >>>>>> Does your headset/mic has a TRRS (Tip, ring, ring, sleeve) connector
>> >> >>>>>> instead of TRS (Tip, ring, sleeve) connector ?
>> >> >>>>
>> >> >>>>> Yes. It's TRRS.
>> >> >>>>
>> >> >>>> Does it mean that the headset/mic is a mono mic ?
>> >> >>>>
>> >> >>>> Is the internal mic mono or stereo ?
>> >> >>>
>> >> >>> I believe it's mono. Based on vumeter activity, and the fact that
>> >> >>> changing only one slider in hda_analyzer is needed to quiet/mute the
>> >> >>> mic.
>> >> >>>
>> >> >>
>> >> >> Not sure any difference between cs4206 and cs4207
>> >> >>
>> >> >> It seem that you can select ADC1 and ADC2 channel mode in cs4207
>> >> >
>> >> >> ‘00’b - ADC2 left channel is mapped to HDA left
>> >> >> channel and ADC2 right channel is mapped HDA
>> >> >> right channel (normal mode).
>> >> >> ‘01’b - ADC2 left channel is mapped to both HDA
>> >> >> left and right channels. ADC2 right channel is
>> >> >> discarded (mono mode).
>> >> >> ‘10’b - ADC2 right channel is mapped to both
>> >> >> HDA left and right channels. ADC2 left channel is
>> >> >> discarded (alternate mono mode).
>> >> >> ‘11’b - ADC2 left channel is mapped to HDA right
>> >> >> channel and ADC2 right channel is mapped to
>> >> >> HDA left channel (channel swap mode).
>> >> >
>> >> > Do any of the hda tools allow me to tweak this from userspace?
>> >> >
>> >> >
>> >>
>> >> you should ask Takarshi as he added this patch, he may know whether
>> >> cs4206 support the above feature
>> >>
>> >> http://git.kernel.org/?p=linux/kernel/git/tiwai/sound.git;a=commitdiff;h=40c20fa05a29766565f56ede17d0ffa539e1c9a9;hp=ea35929b886975a240660b3ba6c61826761731ad
>> >
>> > You can play with hda-emu to send vendor-specific COEF, as found in
>> > the commit above. But it's at your own risk; the patch I made is just
>> > a translation from other information I've got from Cirrus at that
>> > time.
>>
>> Unfortunately, I'm not really familiar with audio codecs, and am finding
>> that undersanding the verbs and and sending the right ones with the
>> right coef (and finding out what was actually written) seems to be a bit
>> out of my league.
>>
>> If someone can suggest what to try with hda-emu, I'm willing, but
>> otherwise I guess I have to opt for an external USB audio adapater for
>> the headset. :(
>
> Ah, of course, I meant hda-verb, not hda-emu...
Ah, that's a little easier to tinker with for the uninformed like me. :)
Using that, it seems that the above registers work on my coded (cs4206)
too. I was able to determine that the built-in mic is ADC2 right
channel, and can at least make the built-in mic switch from the right to
left (swap channel mode)
sudo hda-verb /dev/snd/hwC0D0 0x11 SET_COEF_INDEX 2
sudo hda-verb /dev/snd/hwC0D0 0x11 SET_PROC_COEF 0x180a
or make the right channel go to both HDA channels (mono mode):
sudo hda-verb /dev/snd/hwC0D0 0x11 SET_COEF_INDEX 2
sudo hda-verb /dev/snd/hwC0D0 0x11 SET_PROC_COEF 0x100a
However, I still can't figure out where the headset mic is and how to
enable it.
Here's what I think I know (c.f. alsa-info.sh output below)
Node 0x6 (ADC2 in the spec) defaults to connection 0xd (called Line in
1/Mic in 2 in the spec.) Node 0x5 (ADC1 in the spec) defaults to
connection 0xc (called Mic in 1/Line in 2 in the spec.) Both 0x6 and
0x5 also have optional connections in the connection list for digital
mics (0xe: digital mic in 1 and 0x12: digital mic in 2 respectively),
but I've been ignoring these and focusing on 0xd and 0xc.
I'm also assuming that the headset mic would be on one of the channels
of ADC1, but wondering if it's also possible for it to be on the left
channel of ADC2 (built-in mic is on the right channel of ADC2.)
I used hda_analyzer to ensure that everything was unmuted and the gains
were turned up in 0x5 and 0x6 as well as in the pin nodes 0xc and 0xd.
Comparing the config defaults for 0xc and 0xd I noticed that 0xc had
some strange values that didn't reflect a mic, so I change 0xc to match
0xd (as is shown in the output below.)
I also used hda-verb to try the various options in the ADC1 channels,
but still can't get any input from the headset mic.
It seems like I now have too many variables to play with to find the
right magic setting. Any guidance on what settings to test would be
greatly appreciated.
Thanks,
Kevin
upload=true&script=true&cardinfo=
!!################################
!!ALSA Information Script v 0.4.60
!!################################
!!Script ran on: Tue Mar 6 23:27:51 UTC 2012
!!Linux Distribution
!!------------------
Ubuntu 11.10 \n \l DISTRIB_ID=Ubuntu DISTRIB_DESCRIPTION="Ubuntu 11.10"
!!DMI Information
!!---------------
Manufacturer: Apple Inc.
Product Name: MacBookAir4,1
Product Version: 1.0
!!Kernel Information
!!------------------
Kernel release: 3.0.0-13-generic
Operating System: GNU/Linux
Architecture: x86_64
Processor: x86_64
SMP Enabled: Yes
!!ALSA Version
!!------------
Driver version: 1.0.24
Library version: 1.0.24.1
Utilities version: 1.0.24.2
!!Loaded ALSA modules
!!-------------------
snd_hda_intel
!!Sound Servers on this system
!!----------------------------
Pulseaudio:
Installed - Yes (/usr/bin/pulseaudio)
Running - Yes
ESound Daemon:
Installed - Yes (/usr/bin/esd)
Running - No
!!Soundcards recognised by ALSA
!!-----------------------------
0 [PCH ]: HDA-Intel - HDA Intel PCH
HDA Intel PCH at 0xa0600000 irq 46
!!PCI Soundcards installed in the system
!!--------------------------------------
00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 05)
!!Advanced information - PCI Vendor/Device/Subsystem ID's
!!--------------------------------------------------------
00:1b.0 0403: 8086:1c20 (rev 05)
Subsystem: 8086:7270
!!Modprobe options (Sound related)
!!--------------------------------
snd-atiixp-modem: index=-2
snd-intel8x0m: index=-2
snd-via82xx-modem: index=-2
snd-usb-audio: index=-2
snd-usb-caiaq: index=-2
snd-usb-ua101: index=-2
snd-usb-us122l: index=-2
snd-usb-usx2y: index=-2
snd-cmipci: mpu_port=0x330 fm_port=0x388
snd-pcsp: index=-2
snd-usb-audio: index=-2
!!Loaded sound module options
!!--------------------------
!!Module: snd_hda_intel
align_buffer_size : -1
bdl_pos_adj : 1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
beep_mode : 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
enable : Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y,Y
enable_msi : -1
id : (null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null)
index : -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
model : (null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null)
patch : (null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null),(null)
position_fix : 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
power_save : 0
power_save_controller : Y
probe_mask : -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1
probe_only : 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
single_cmd : N
snoop : Y
!!HDA-Intel Codec information
!!---------------------------
--startcollapse--
Codec: Cirrus Logic CS4206
Address: 0
AFG Function Id: 0x1 (unsol 0)
Vendor Id: 0x10134206
Subsystem Id: 0x106b6200
Revision Id: 0x100302
No Modem Function Group found
Default PCM:
rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000
bits [0x1e]: 16 20 24 32
formats [0x3]: PCM FLOAT
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
GPIO: io=4, o=0, i=0, unsolicited=0, wake=0
IO[0]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
IO[1]: enable=1, dir=1, wake=0, sticky=0, data=1, unsol=0
IO[2]: enable=0, dir=0, wake=0, sticky=0, data=0, unsol=0
IO[3]: enable=1, dir=1, wake=0, sticky=0, data=0, unsol=0
Node 0x02 [Audio Output] wcaps 0xd041d: Stereo Amp-Out
Control: name="Master Playback Switch", index=0, device=0
Control: name="Master Playback Volume", index=0, device=0
Control: name="Headphone Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Control: name="Headphone Playback Volume", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Amp-Out caps: ofs=0x73, nsteps=0x7f, stepsize=0x01, mute=1
Amp-Out vals: [0x2e 0x2e]
Converter: stream=8, channel=0
PCM:
rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000
bits [0x1e]: 16 20 24 32
formats [0x3]: PCM FLOAT
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Delay: 13 samples
Node 0x03 [Audio Output] wcaps 0xd041d: Stereo Amp-Out
Amp-Out caps: ofs=0x73, nsteps=0x7f, stepsize=0x01, mute=1
Amp-Out vals: [0xf3 0xf3]
Converter: stream=0, channel=0
PCM:
rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000
bits [0x1e]: 16 20 24 32
formats [0x3]: PCM FLOAT
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Delay: 13 samples
Node 0x04 [Audio Output] wcaps 0xd041d: Stereo Amp-Out
Control: name="Speaker Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Control: name="Speaker Playback Volume", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Device: name="Cirrus Analog", type="Audio", device=0
Amp-Out caps: ofs=0x73, nsteps=0x7f, stepsize=0x01, mute=1
Amp-Out vals: [0x80 0x80]
Converter: stream=8, channel=0
PCM:
rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000
bits [0x1e]: 16 20 24 32
formats [0x3]: PCM FLOAT
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Delay: 13 samples
Node 0x05 [Audio Input] wcaps 0x18051b: Stereo Amp-In
Amp-In caps: ofs=0x33, nsteps=0x3f, stepsize=0x03, mute=1
Amp-In vals: [0x3f 0x3f] [0x3f 0x3f]
Converter: stream=0, channel=0
SDI-Select: 0
PCM:
rates [0x1f5]: 8000 16000 32000 44100 48000 88200 96000
bits [0x1e]: 16 20 24 32
formats [0x3]: PCM FLOAT
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Delay: 8 samples
Connection: 2
0x0c* 0x12
Node 0x06 [Audio Input] wcaps 0x18051b: Stereo Amp-In
Control: name="Capture Switch", index=0, device=0
Control: name="Capture Volume", index=0, device=0
Device: name="Cirrus Analog", type="Audio", device=0
Amp-In caps: ofs=0x33, nsteps=0x3f, stepsize=0x03, mute=1
Amp-In vals: [0x3f 0x3f] [0x3f 0x3f]
Converter: stream=4, channel=0
SDI-Select: 0
PCM:
rates [0x1f5]: 8000 16000 32000 44100 48000 88200 96000
bits [0x1e]: 16 20 24 32
formats [0x3]: PCM FLOAT
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Delay: 8 samples
Connection: 2
0x0d* 0x0e
Node 0x07 [Audio Input] wcaps 0x180791: Stereo Digital
Converter: stream=0, channel=0
SDI-Select: 0
Digital: Preemphasis Copyright
Digital category: 0x0
PCM:
rates [0x570]: 32000 44100 48000 96000 192000
bits [0x1e]: 16 20 24 32
formats [0x7]: PCM FLOAT AC3
Unsolicited: tag=00, enabled=0
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Delay: 8 samples
Connection: 1
0x0f
Node 0x08 [Audio Output] wcaps 0x40611: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:
rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000
bits [0x1e]: 16 20 24 32
formats [0x7]: PCM FLOAT AC3
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Delay: 4 samples
Node 0x09 [Pin Complex] wcaps 0x410581: Stereo
Control: name="Headphone Jack", index=0, device=0
Pincap 0x0000001c: OUT HP Detect
Pin Default 0x012b4030: [Jack] HP Out at Ext Rear
Conn = Comb, Color = Green
DefAssociation = 0x3, Sequence = 0x0
Pin-ctls: 0xc0: OUT HP
Unsolicited: tag=01, enabled=1
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Delay: 1 samples
Connection: 1
0x02
Node 0x0a [Pin Complex] wcaps 0x410581: Stereo
Pincap 0x00000054: OUT Detect Balanced
Pin Default 0x400000f0: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Delay: 1 samples
Connection: 1
0x03
Node 0x0b [Pin Complex] wcaps 0x410101: Stereo
Pincap 0x00000050: OUT Balanced
Pin Default 0x90100120: [Fixed] Speaker at Int N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0x2, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x00:
Delay: 1 samples
Connection: 1
0x04
Node 0x0c [Pin Complex] wcaps 0x41048b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x03 0x03]
Pincap 0x00000024: IN Detect
Pin Default 0x90a60160: [Fixed] Mic at Int N/A
Conn = Digital, Color = Unknown
DefAssociation = 0x6, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x20: IN
Unsolicited: tag=00, enabled=0
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Delay: 1 samples
Node 0x0d [Pin Complex] wcaps 0x41048b: Stereo Amp-In
Control: name="Mic Capture Volume", index=0, device=0
ControlAmp: chs=3, dir=In, idx=0, ofs=0
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x03 0x03]
Pincap 0x00001764: IN Detect Balanced
Vref caps: HIZ 50 GRD 80
Pin Default 0x90a60160: [Fixed] Mic at Int N/A
Conn = Digital, Color = Unknown
DefAssociation = 0x6, Sequence = 0x0
Misc = NO_PRESENCE
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Delay: 1 samples
Node 0x0e [Pin Complex] wcaps 0x41000b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x02, stepsize=0x27, mute=0
Amp-In vals: [0x02 0x02]
Pincap 0x00000020: IN
Pin Default 0x400000f0: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Delay: 1 samples
Node 0x0f [Pin Complex] wcaps 0x410681: Stereo Digital
Pincap 0x00000024: IN Detect
Pin Default 0x400000f0: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=00, enabled=0
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Delay: 1 samples
Node 0x10 [Pin Complex] wcaps 0x410301: Stereo Digital
Pincap 0x00000010: OUT
Pin Default 0x400000f0: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Delay: 1 samples
Connection: 1
0x08
Node 0x11 [Vendor Defined Widget] wcaps 0xf00040: Mono
Processing caps: benign=0, ncoeff=22
Node 0x12 [Pin Complex] wcaps 0x41000b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x02, stepsize=0x27, mute=0
Amp-In vals: [0x02 0x02]
Pincap 0x00000020: IN
Pin Default 0x400000f0: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x20: IN
Delay: 1 samples
Node 0x13 [Beep Generator Widget] wcaps 0x700000: Mono
Node 0x14 [Audio Output] wcaps 0x40611: Stereo Digital
Converter: stream=0, channel=0
Digital:
Digital category: 0x0
PCM:
rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000
bits [0x1e]: 16 20 24 32
formats [0x7]: PCM FLOAT AC3
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Delay: 4 samples
Node 0x15 [Pin Complex] wcaps 0x410301: Stereo Digital
Pincap 0x00000010: OUT
Pin Default 0x400000f0: [N/A] Line Out at Ext N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0xf, Sequence = 0x0
Pin-ctls: 0x00:
Delay: 1 samples
Connection: 1
0x14
Codec: Intel CougarPoint HDMI
Address: 3
AFG Function Id: 0x1 (unsol 0)
Vendor Id: 0x80862805
Subsystem Id: 0x80860101
Revision Id: 0x100000
No Modem Function Group found
Default PCM:
rates [0x0]:
bits [0x0]:
formats [0x0]:
Default Amp-In caps: N/A
Default Amp-Out caps: N/A
GPIO: io=0, o=0, i=0, unsolicited=0, wake=0
Node 0x02 [Audio Output] wcaps 0x6611: 8-Channels Digital
Converter: stream=0, channel=0
Digital: Enabled GenLevel
Digital category: 0x2
PCM:
rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000
bits [0x1e]: 16 20 24 32
formats [0x5]: PCM AC3
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Node 0x03 [Audio Output] wcaps 0x6611: 8-Channels Digital
Converter: stream=0, channel=0
Digital: Enabled GenLevel
Digital category: 0x2
PCM:
rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000
bits [0x1e]: 16 20 24 32
formats [0x5]: PCM AC3
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Node 0x04 [Audio Output] wcaps 0x6611: 8-Channels Digital
Converter: stream=0, channel=0
Digital: Enabled GenLevel
Digital category: 0x2
PCM:
rates [0x7f0]: 32000 44100 48000 88200 96000 176400 192000
bits [0x1e]: 16 20 24 32
formats [0x5]: PCM AC3
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Node 0x05 [Pin Complex] wcaps 0x40778d: 8-Channels Digital Amp-Out CP
Control: name="HDMI/DP,pcm=3 Jack", index=0, device=0
Control: name="IEC958 Playback Con Mask", index=0, device=0
Control: name="IEC958 Playback Pro Mask", index=0, device=0
Control: name="IEC958 Playback Default", index=0, device=0
Control: name="IEC958 Playback Switch", index=0, device=0
Control: name="ELD", index=0, device=3
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x09000094: OUT Detect HBR HDMI DP
Pin Default 0x18560010: [Jack] Digital Out at Int HDMI
Conn = Digital, Color = Unknown
DefAssociation = 0x1, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=01, enabled=1
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Connection: 1
0x02
Node 0x06 [Pin Complex] wcaps 0x40778d: 8-Channels Digital Amp-Out CP
Control: name="HDMI/DP,pcm=7 Jack", index=0, device=0
Control: name="IEC958 Playback Con Mask", index=1, device=0
Control: name="IEC958 Playback Pro Mask", index=1, device=0
Control: name="IEC958 Playback Default", index=1, device=0
Control: name="IEC958 Playback Switch", index=1, device=0
Control: name="ELD", index=0, device=7
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x09000094: OUT Detect HBR HDMI DP
Pin Default 0x18560010: [Jack] Digital Out at Int HDMI
Conn = Digital, Color = Unknown
DefAssociation = 0x1, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=02, enabled=1
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Connection: 1
0x03
Node 0x07 [Pin Complex] wcaps 0x40778d: 8-Channels Digital Amp-Out CP
Control: name="HDMI/DP,pcm=8 Jack", index=0, device=0
Control: name="IEC958 Playback Con Mask", index=2, device=0
Control: name="IEC958 Playback Pro Mask", index=2, device=0
Control: name="IEC958 Playback Default", index=2, device=0
Control: name="IEC958 Playback Switch", index=2, device=0
Control: name="ELD", index=0, device=8
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x09000094: OUT Detect HBR HDMI DP
Pin Default 0x18560010: [Jack] Digital Out at Int HDMI
Conn = Digital, Color = Unknown
DefAssociation = 0x1, Sequence = 0x0
Pin-ctls: 0x00:
Unsolicited: tag=03, enabled=1
Power states: D0 D3 EPSS
Power: setting=D0, actual=D0
Connection: 1
0x04
Node 0x08 [Vendor Defined Widget] wcaps 0xf00000: Mono
--endcollapse--
!!ALSA Device nodes
!!-----------------
crw-rw----+ 1 root audio 116, 9 Mar 2 11:11 /dev/snd/controlC0
crw-rw----+ 1 root audio 116, 8 Mar 2 11:11 /dev/snd/hwC0D0
crw-rw----+ 1 root audio 116, 7 Mar 2 11:11 /dev/snd/hwC0D3
crw-rw----+ 1 root audio 116, 6 Mar 6 10:50 /dev/snd/pcmC0D0c
crw-rw----+ 1 root audio 116, 5 Mar 6 15:18 /dev/snd/pcmC0D0p
crw-rw----+ 1 root audio 116, 4 Mar 2 11:11 /dev/snd/pcmC0D3p
crw-rw----+ 1 root audio 116, 3 Mar 2 11:11 /dev/snd/pcmC0D7p
crw-rw----+ 1 root audio 116, 2 Mar 2 11:11 /dev/snd/pcmC0D8p
crw-rw----+ 1 root audio 116, 1 Mar 2 11:11 /dev/snd/seq
crw-rw----+ 1 root audio 116, 33 Mar 2 11:11 /dev/snd/timer
/dev/snd/by-path:
total 0
drwxr-xr-x 2 root root 60 Mar 2 11:11 .
drwxr-xr-x 3 root root 260 Mar 2 11:11 ..
lrwxrwxrwx 1 root root 12 Mar 2 11:11 pci-0000:00:1b.0 -> ../controlC0
!!Aplay/Arecord output
!!------------
APLAY
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: Cirrus Analog [Cirrus Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
ARECORD
**** List of CAPTURE Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: Cirrus Analog [Cirrus Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0
!!Amixer output
!!-------------
!!-------Mixer controls for card 0 [PCH]
Card hw:0 'PCH'/'HDA Intel PCH at 0xa0600000 irq 46'
Mixer name : 'Intel CougarPoint HDMI'
Components : 'HDA:10134206,106b6200,00100302 HDA:80862805,80860101,00100000'
Controls : 30
Simple ctrls : 10
Simple mixer control 'Master',0
Capabilities: pvolume pvolume-joined pswitch pswitch-joined penum
Playback channels: Mono
Limits: Playback 0 - 115
Mono: Playback 46 [40%] [-34.50dB] [on]
Simple mixer control 'Headphone',0
Capabilities: pvolume pswitch penum
Playback channels: Front Left - Front Right
Limits: Playback 0 - 115
Mono:
Front Left: Playback 115 [100%] [0.00dB] [on]
Front Right: Playback 115 [100%] [0.00dB] [on]
Simple mixer control 'Speaker',0
Capabilities: pvolume pswitch penum
Playback channels: Front Left - Front Right
Limits: Playback 0 - 115
Mono:
Front Left: Playback 0 [0%] [-57.50dB] [off]
Front Right: Playback 0 [0%] [-57.50dB] [off]
Simple mixer control 'PCM',0
Capabilities: pvolume penum
Playback channels: Front Left - Front Right
Limits: Playback 0 - 255
Mono:
Front Left: Playback 255 [100%] [0.00dB]
Front Right: Playback 255 [100%] [0.00dB]
Simple mixer control 'Mic',0
Capabilities: cvolume penum
Capture channels: Front Left - Front Right
Limits: Capture 0 - 3
Front Left: Capture 3 [100%] [30.00dB]
Front Right: Capture 3 [100%] [30.00dB]
Simple mixer control 'IEC958',0
Capabilities: pswitch pswitch-joined penum
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'IEC958',1
Capabilities: pswitch pswitch-joined penum
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'IEC958',2
Capabilities: pswitch pswitch-joined penum
Playback channels: Mono
Mono: Playback [on]
Simple mixer control 'Capture',0
Capabilities: cvolume cswitch penum
Capture channels: Front Left - Front Right
Limits: Capture 0 - 63
Front Left: Capture 63 [100%] [12.00dB] [on]
Front Right: Capture 63 [100%] [12.00dB] [on]
Simple mixer control 'Digital',0
Capabilities: cvolume penum
Capture channels: Front Left - Front Right
Limits: Capture 0 - 120
Front Left: Capture 120 [100%] [30.00dB]
Front Right: Capture 120 [100%] [30.00dB]
!!Alsactl output
!!-------------
--startcollapse--
state.PCH {
control.1 {
iface MIXER
name 'Master Playback Switch'
value true
comment {
access 'read write'
type BOOLEAN
count 1
}
}
control.2 {
iface MIXER
name 'Master Playback Volume'
value 46
comment {
access 'read write'
type INTEGER
count 1
range '0 - 115'
dbmin -5750
dbmax 0
dbvalue.0 -3450
}
}
control.3 {
iface MIXER
name 'Headphone Playback Switch'
value.0 true
value.1 true
comment {
access 'read write'
type BOOLEAN
count 2
}
}
control.4 {
iface MIXER
name 'Headphone Playback Volume'
value.0 115
value.1 115
comment {
access 'read write'
type INTEGER
count 2
range '0 - 115'
dbmin -5750
dbmax 0
dbvalue.0 0
dbvalue.1 0
}
}
control.5 {
iface MIXER
name 'Speaker Playback Switch'
value.0 false
value.1 false
comment {
access 'read write'
type BOOLEAN
count 2
}
}
control.6 {
iface MIXER
name 'Speaker Playback Volume'
value.0 0
value.1 0
comment {
access 'read write'
type INTEGER
count 2
range '0 - 115'
dbmin -5750
dbmax 0
dbvalue.0 -5750
dbvalue.1 -5750
}
}
control.7 {
iface MIXER
name 'Capture Switch'
value.0 true
value.1 true
comment {
access 'read write'
type BOOLEAN
count 2
}
}
control.8 {
iface MIXER
name 'Capture Volume'
value.0 63
value.1 63
comment {
access 'read write'
type INTEGER
count 2
range '0 - 63'
dbmin -5100
dbmax 1200
dbvalue.0 1200
dbvalue.1 1200
}
}
control.9 {
iface MIXER
name 'Mic Capture Volume'
value.0 3
value.1 3
comment {
access 'read write'
type INTEGER
count 2
range '0 - 3'
dbmin 0
dbmax 3000
dbvalue.0 3000
dbvalue.1 3000
}
}
control.10 {
iface CARD
name 'Headphone Jack'
value true
comment {
access read
type BOOLEAN
count 1
}
}
control.11 {
iface CARD
name 'HDMI/DP,pcm=3 Jack'
value false
comment {
access read
type BOOLEAN
count 1
}
}
control.12 {
iface MIXER
name 'IEC958 Playback Con Mask'
value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access read
type IEC958
count 1
}
}
control.13 {
iface MIXER
name 'IEC958 Playback Pro Mask'
value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access read
type IEC958
count 1
}
}
control.14 {
iface MIXER
name 'IEC958 Playback Default'
value '0482000200000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access 'read write'
type IEC958
count 1
}
}
control.15 {
iface MIXER
name 'IEC958 Playback Switch'
value true
comment {
access 'read write'
type BOOLEAN
count 1
}
}
control.16 {
iface PCM
device 3
name ELD
value ''
comment {
access read
type BYTES
count 0
}
}
control.17 {
iface CARD
name 'HDMI/DP,pcm=7 Jack'
value false
comment {
access read
type BOOLEAN
count 1
}
}
control.18 {
iface MIXER
name 'IEC958 Playback Con Mask'
index 1
value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access read
type IEC958
count 1
}
}
control.19 {
iface MIXER
name 'IEC958 Playback Pro Mask'
index 1
value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access read
type IEC958
count 1
}
}
control.20 {
iface MIXER
name 'IEC958 Playback Default'
index 1
value '0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access 'read write'
type IEC958
count 1
}
}
control.21 {
iface MIXER
name 'IEC958 Playback Switch'
index 1
value true
comment {
access 'read write'
type BOOLEAN
count 1
}
}
control.22 {
iface PCM
device 7
name ELD
value ''
comment {
access read
type BYTES
count 0
}
}
control.23 {
iface CARD
name 'HDMI/DP,pcm=8 Jack'
value false
comment {
access read
type BOOLEAN
count 1
}
}
control.24 {
iface MIXER
name 'IEC958 Playback Con Mask'
index 2
value '0fff000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access read
type IEC958
count 1
}
}
control.25 {
iface MIXER
name 'IEC958 Playback Pro Mask'
index 2
value '0f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access read
type IEC958
count 1
}
}
control.26 {
iface MIXER
name 'IEC958 Playback Default'
index 2
value '0400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000'
comment {
access 'read write'
type IEC958
count 1
}
}
control.27 {
iface MIXER
name 'IEC958 Playback Switch'
index 2
value true
comment {
access 'read write'
type BOOLEAN
count 1
}
}
control.28 {
iface PCM
device 8
name ELD
value ''
comment {
access read
type BYTES
count 0
}
}
control.29 {
iface MIXER
name 'PCM Playback Volume'
value.0 255
value.1 255
comment {
access 'read write user'
type INTEGER
count 2
range '0 - 255'
tlv '0000000100000008ffffec1400000014'
dbmin -5100
dbmax 0
dbvalue.0 0
dbvalue.1 0
}
}
control.30 {
iface MIXER
name 'Digital Capture Volume'
value.0 120
value.1 120
comment {
access 'read write user'
type INTEGER
count 2
range '0 - 120'
tlv '0000000100000008fffff44800000032'
dbmin -3000
dbmax 3000
dbvalue.0 3000
dbvalue.1 3000
}
}
}
--endcollapse--
!!All Loaded Modules
!!------------------
Module
asix
usbnet
nfs
lockd
fscache
auth_rpcgss
nfs_acl
sunrpc
joydev
usbhid
bcm5974
bnep
rfcomm
pci_stub
vboxpci
vboxnetadp
vboxnetflt
vboxdrv
speedstep_lib
parport_pc
ppdev
dm_crypt
snd_hda_codec_hdmi
snd_hda_codec_cirrus
uvcvideo
wl
btusb
bluetooth
lib80211
bcma
videodev
v4l2_compat_ioctl32
arc4
snd_hda_intel
snd_hda_codec
snd_hwdep
snd_pcm
snd_seq_midi
snd_rawmidi
snd_seq_midi_event
binfmt_misc
snd_seq
brcmsmac
brcmutil
applesmc
input_polldev
snd_timer
snd_seq_device
mei
mac80211
snd
cfg80211
hid_apple
soundcore
snd_page_alloc
crc_ccitt
apple_bl
coretemp
lp
parport
btrfs
zlib_deflate
libcrc32c
usb_storage
uas
hid
i915
drm_kms_helper
drm
i2c_algo_bit
video
!!Sysfs Files
!!-----------
/sys/class/sound/hwC0D0/init_pin_configs:
0x09 0x012b4030
0x0a 0x400000f0
0x0b 0x90100120
0x0c 0x400000f0
0x0d 0x90a00110
0x0e 0x400000f0
0x0f 0x400000f0
0x10 0x400000f0
0x12 0x400000f0
0x15 0x400000f0
/sys/class/sound/hwC0D0/driver_pin_configs:
/sys/class/sound/hwC0D0/user_pin_configs:
0x09 0x012b4030
0x0a 0x400000f0
0x0b 0x90100120
0x0c 0x400000f0
0x0d 0x0181344f
0x0e 0x400000f0
0x0f 0x400000f0
0x10 0x400000f0
0x12 0x400000f0
0x15 0x400000f0
/sys/class/sound/hwC0D0/init_verbs:
/sys/class/sound/hwC0D3/init_pin_configs:
0x05 0x18560010
0x06 0x18560010
0x07 0x18560010
/sys/class/sound/hwC0D3/driver_pin_configs:
/sys/class/sound/hwC0D3/user_pin_configs:
/sys/class/sound/hwC0D3/init_verbs:
!!ALSA/HDA dmesg
!!------------------
[ 8.441252] brcmsmac 0000:02:00.0: setting latency timer to 64
[ 8.518769] snd_hda_intel 0000:00:1b.0: PCI INT A -> GSI 22 (level, low) -> IRQ 22
[ 8.518829] snd_hda_intel 0000:00:1b.0: irq 46 for MSI/MSI-X
[ 8.518856] snd_hda_intel 0000:00:1b.0: setting latency timer to 64
[ 8.582548] applesmc: : read arg fail
--
[ 9.020330] type=1400 audit(1330715498.242:11): apparmor="STATUS" operation="profile_replace" name="/sbin/dhclient" pid=1678 comm="apparmor_parser"
[ 9.169647] HDMI status: Codec=3 Pin=5 Presence_Detect=0 ELD_Valid=0
[ 9.169709] HDMI status: Codec=3 Pin=6 Presence_Detect=0 ELD_Valid=0
[ 9.169771] HDMI status: Codec=3 Pin=7 Presence_Detect=0 ELD_Valid=0
[ 9.169905] input: HDA Intel PCH HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:1b.0/sound/card0/input12
[ 9.170027] input: HDA Intel PCH HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:1b.0/sound/card0/input13
[ 9.170124] input: HDA Intel PCH HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:1b.0/sound/card0/input14
[ 9.170228] input: HDA Intel PCH Headphone as /devices/pci0000:00/0000:00:1b.0/sound/card0/input15
[ 9.187640] ieee80211 phy0: wl_ops_config: change monitor mode: false (implement)
--
[ 153.272605] FS-Cache: Netfs 'nfs' registered for caching
[ 478.386979] hda-codec: reconfiguring
[ 478.386990] The codec is being used, can't reconfigure.
--
[13096.675555] ehci_hcd 0000:00:1d.7: PCI INT A disabled
[13096.819376] snd_hda_intel 0000:00:1b.0: PCI INT A disabled
[13096.835280] PM: suspend of drv:snd_hda_intel dev:0000:00:1b.0 complete after 223.113 msecs
[13098.215618] PM: suspend of drv:sd dev:0:0:0:0 complete after 1605.911 msecs
--
[13099.480079] ehci_hcd 0000:00:1a.7: restoring config space at offset 0x1 (was 0x2900000, writing 0x2900002)
[13099.480106] snd_hda_intel 0000:00:1b.0: restoring config space at offset 0xf (was 0x100, writing 0x10b)
[13099.480120] snd_hda_intel 0000:00:1b.0: restoring config space at offset 0x4 (was 0x4, writing 0xa0600004)
[13099.480124] snd_hda_intel 0000:00:1b.0: restoring config space at offset 0x3 (was 0x0, writing 0x40)
[13099.480130] snd_hda_intel 0000:00:1b.0: restoring config space at offset 0x1 (was 0x100000, writing 0x100002)
[13099.480165] pcieport 0000:00:1c.0: restoring config space at offset 0xf (was 0x100, writing 0x1ff)
--
[13099.481264] ehci_hcd 0000:00:1a.7: setting latency timer to 64
[13099.481267] snd_hda_intel 0000:00:1b.0: PCI INT A -> GSI 22 (level, low) -> IRQ 22
[13099.481272] snd_hda_intel 0000:00:1b.0: setting latency timer to 64
[13099.481313] uhci_hcd 0000:00:1d.0: PCI INT B -> GSI 19 (level, low) -> IRQ 19
[13099.481319] uhci_hcd 0000:00:1d.0: setting latency timer to 64
[13099.481333] snd_hda_intel 0000:00:1b.0: irq 46 for MSI/MSI-X
[13099.481348] usb usb4: root hub lost power or was reset
--
[116107.946111] ieee80211 phy0: wl0: wlc_recv: dropping a frame with invalid src mac address, a2: f3:83:00:00:01:01
[124584.337084] hda-codec: reconfiguring
[124584.337087] The codec is being used, can't reconfigure.
[129383.572792] hda-codec: reconfiguring
[129383.572799] The codec is being used, can't reconfigure.
More information about the Alsa-devel
mailing list