* HDA intel, wired headset w/mic, jack mic detect
@ 2012-02-23 19:09 Kevin Hilman
2012-02-24 6:25 ` David Henningsson
0 siblings, 1 reply; 26+ messages in thread
From: Kevin Hilman @ 2012-02-23 19:09 UTC (permalink / raw)
To: alsa-devel
Hello,
I'm trying to get a wired headset with a mic working on MacBookAir
running v3.0 (3.0.0-13-generic from Ubuntu to be precise.)
It has Intel HDA audio[1] and everything works fine, including the
built-in mic. The only think I can't seem to get working is a headset
w/mic.
I know the HW for dynamic detect works because the mic is detected
dynamically under OSX. Is there some setting I need to tweak in order
to enable the automatic mic detection?
Thanks for any pointers,
Kevin
[1] $ cat /proc/asound/cards
0 [PCH ]: HDA-Intel - HDA Intel PCH
HDA Intel PCH at 0xa0600000 irq 46
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-02-23 19:09 HDA intel, wired headset w/mic, jack mic detect Kevin Hilman
@ 2012-02-24 6:25 ` David Henningsson
2012-02-28 17:55 ` Hilman, Kevin
0 siblings, 1 reply; 26+ messages in thread
From: David Henningsson @ 2012-02-24 6:25 UTC (permalink / raw)
To: Kevin Hilman; +Cc: alsa-devel
On 02/23/2012 08:09 PM, Kevin Hilman wrote:
> Hello,
>
> I'm trying to get a wired headset with a mic working on MacBookAir
> running v3.0 (3.0.0-13-generic from Ubuntu to be precise.)
>
> It has Intel HDA audio[1] and everything works fine, including the
> built-in mic. The only think I can't seem to get working is a headset
> w/mic.
>
> I know the HW for dynamic detect works because the mic is detected
> dynamically under OSX. Is there some setting I need to tweak in order
> to enable the automatic mic detection?
>
> Thanks for any pointers,
Hi Kevin,
You can try upgrading your alsa version to the daily snapshot using this
method: https://wiki.ubuntu.com/Audio/UpgradingAlsa/DKMS
--
David Henningsson, Canonical Ltd.
http://launchpad.net/~diwic
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-02-24 6:25 ` David Henningsson
@ 2012-02-28 17:55 ` Hilman, Kevin
2012-02-28 18:00 ` Mark Brown
2012-02-29 15:05 ` Raymond Yau
0 siblings, 2 replies; 26+ messages in thread
From: Hilman, Kevin @ 2012-02-28 17:55 UTC (permalink / raw)
To: David Henningsson; +Cc: alsa-devel
On Thu, Feb 23, 2012 at 10:25 PM, David Henningsson
<david.henningsson@canonical.com> wrote:
> On 02/23/2012 08:09 PM, Kevin Hilman wrote:
>>
>> Hello,
>>
>> I'm trying to get a wired headset with a mic working on MacBookAir
>> running v3.0 (3.0.0-13-generic from Ubuntu to be precise.)
>>
>> It has Intel HDA audio[1] and everything works fine, including the
>> built-in mic. The only think I can't seem to get working is a headset
>> w/mic.
>>
>> I know the HW for dynamic detect works because the mic is detected
>> dynamically under OSX. Is there some setting I need to tweak in order
>> to enable the automatic mic detection?
>>
>> Thanks for any pointers,
>
>
> Hi Kevin,
>
> You can try upgrading your alsa version to the daily snapshot using this
> method: https://wiki.ubuntu.com/Audio/UpgradingAlsa/DKMS
Hi David,
Thanks for the suggestion.
I tried the latest version but the headset mic still doesn't work.
Are there any particular settings I should be configuring to make this
work?
Note that the jack detect is working for the output. When I plug in
the headset, it switches the playback from the speakers to the headset
automatically, and I see the 'Connector' drop down in the output tab
of the Sound settings switch between "Analog headpohones' and 'Analog
speakers."
It seems there's still a problem detecting that the headset also has a mic.
Kevin
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-02-28 17:55 ` Hilman, Kevin
@ 2012-02-28 18:00 ` Mark Brown
2012-02-29 15:05 ` Raymond Yau
1 sibling, 0 replies; 26+ messages in thread
From: Mark Brown @ 2012-02-28 18:00 UTC (permalink / raw)
To: Hilman, Kevin; +Cc: alsa-devel, David Henningsson
On Tue, Feb 28, 2012 at 09:55:18AM -0800, Hilman, Kevin wrote:
> On Thu, Feb 23, 2012 at 10:25 PM, David Henningsson
> > On 02/23/2012 08:09 PM, Kevin Hilman wrote:
> >> I'm trying to get a wired headset with a mic working on MacBookAir
> >> running v3.0 (3.0.0-13-generic from Ubuntu to be precise.)
> > You can try upgrading your alsa version to the daily snapshot using this
> > method: https://wiki.ubuntu.com/Audio/UpgradingAlsa/DKMS
> It seems there's still a problem detecting that the headset also has a mic.
David, FWIW this is one of the systems I'm thinking of when I say that
headset is also an issue on HDA systems, not just for embedded devices.
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-02-28 17:55 ` Hilman, Kevin
2012-02-28 18:00 ` Mark Brown
@ 2012-02-29 15:05 ` Raymond Yau
2012-02-29 15:26 ` Mark Brown
2012-02-29 19:08 ` Kevin Hilman
1 sibling, 2 replies; 26+ messages in thread
From: Raymond Yau @ 2012-02-29 15:05 UTC (permalink / raw)
To: Hilman, Kevin; +Cc: alsa-devel
2012/2/29, Hilman, Kevin <khilman@ti.com>:
> On Thu, Feb 23, 2012 at 10:25 PM, David Henningsson
> <david.henningsson@canonical.com> wrote:
>> On 02/23/2012 08:09 PM, Kevin Hilman wrote:
>>>
>>> Hello,
>>>
>>> I'm trying to get a wired headset with a mic working on MacBookAir
>>> running v3.0 (3.0.0-13-generic from Ubuntu to be precise.)
>>>
>>> It has Intel HDA audio[1] and everything works fine, including the
>>> built-in mic. The only think I can't seem to get working is a headset
>>> w/mic.
>>>
>>> I know the HW for dynamic detect works because the mic is detected
>>> dynamically under OSX. Is there some setting I need to tweak in order
>>> to enable the automatic mic detection?
>>>
>>> Thanks for any pointers,
>>
>>
>> Hi Kevin,
>>
>> You can try upgrading your alsa version to the daily snapshot using this
>> method: https://wiki.ubuntu.com/Audio/UpgradingAlsa/DKMS
>
> Hi David,
>
> Thanks for the suggestion.
>
> I tried the latest version but the headset mic still doesn't work.
> Are there any particular settings I should be configuring to make this
> work?
>
> Note that the jack detect is working for the output. When I plug in
> the headset, it switches the playback from the speakers to the headset
> automatically, and I see the 'Connector' drop down in the output tab
> of the Sound settings switch between "Analog headpohones' and 'Analog
> speakers."
>
> It seems there's still a problem detecting that the headset also has a mic.
>
> Kevin
Does your headset/mic has a TRRS (Tip, ring, ring, sleeve) connector
instead of TRS (Tip, ring, sleeve) connector ?
You can use David's hda-jack-sense-test to find out any jack sense at
the node of External mic when you plug the headset , if not , you may
need to modify unsol event of headphone to select the external mic ,
internal mic.
http://thread.gmane.org/gmane.linux.alsa.devel/85051
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-02-29 15:05 ` Raymond Yau
@ 2012-02-29 15:26 ` Mark Brown
2012-02-29 19:08 ` Kevin Hilman
1 sibling, 0 replies; 26+ messages in thread
From: Mark Brown @ 2012-02-29 15:26 UTC (permalink / raw)
To: Raymond Yau; +Cc: Hilman, Kevin, alsa-devel
On Wed, Feb 29, 2012 at 11:05:25PM +0800, Raymond Yau wrote:
> Does your headset/mic has a TRRS (Tip, ring, ring, sleeve) connector
> instead of TRS (Tip, ring, sleeve) connector ?
> You can use David's hda-jack-sense-test to find out any jack sense at
> the node of External mic when you plug the headset , if not , you may
> need to modify unsol event of headphone to select the external mic ,
> internal mic.
Given that this is a MacBook Air it'll be the Apple pinout with ground
on pin 3; any Apple headset and most third party ones ought to be happy.
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-02-29 15:05 ` Raymond Yau
2012-02-29 15:26 ` Mark Brown
@ 2012-02-29 19:08 ` Kevin Hilman
2012-02-29 23:43 ` Raymond Yau
2012-03-01 17:25 ` Mark Brown
1 sibling, 2 replies; 26+ messages in thread
From: Kevin Hilman @ 2012-02-29 19:08 UTC (permalink / raw)
To: Raymond Yau; +Cc: alsa-devel
Raymond Yau <superquad.vortex2@gmail.com> writes:
> Does your headset/mic has a TRRS (Tip, ring, ring, sleeve) connector
> instead of TRS (Tip, ring, sleeve) connector ?
Yes. It's TRRS.
But below, I tried with a normal stero headset (no mic) which has a TRS
connector too.
> You can use David's hda-jack-sense-test to find out any jack sense at
> the node of External mic when you plug the headset , if not , you may
> need to modify unsol event of headphone to select the external mic ,
> internal mic.
Here are the results of hda-jack-sense-test
Nothing plugged in:
# hda-jack-sense-test -a
Pin 0x09 (Green HP Out): present = No
Pin 0x0a (Not connected): present = No
Pin 0x0b (Internal Speaker): present = No
Pin 0x0c (Not connected): present = No
Pin 0x0d (Internal Mic): present = No
Pin 0x0e (Not connected): present = No
Pin 0x0f (Not connected): present = No
Pin 0x10 (Not connected): present = No
Pin 0x12 (Not connected): present = No
Pin 0x15 (Not connected): present = No
With regular stereo headphones with (*no* mic, TRS):
# hda-jack-sense-test -a
Pin 0x09 (Green HP Out): present = Yes
Pin 0x0a (Not connected): present = No
Pin 0x0b (Internal Speaker): present = No
Pin 0x0c (Not connected): present = No
Pin 0x0d (Internal Mic): present = No
Pin 0x0e (Not connected): present = No
Pin 0x0f (Not connected): present = No
Pin 0x10 (Not connected): present = No
Pin 0x12 (Not connected): present = No
Pin 0x15 (Not connected): present = No
Finally, plugging the headset w/mic (TRRS):
root@eze:~# hda-jack-sense-test -a
Pin 0x09 (Green HP Out): present = Yes
Pin 0x0a (Not connected): present = No
Pin 0x0b (Internal Speaker): present = No
Pin 0x0c (Not connected): present = No
Pin 0x0d (Internal Mic): present = No
Pin 0x0e (Not connected): present = No
Pin 0x0f (Not connected): present = No
Pin 0x10 (Not connected): present = No
Pin 0x12 (Not connected): present = No
Pin 0x15 (Not connected): present = No
As you can see, there's no detected difference between the TRS and TRRS
headsets, which is the root of the problem.
Since this is a MacBookAir, it dual-boots OSX, and the detection works
just fine using the same headset under OSX.
Kevin
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-02-29 19:08 ` Kevin Hilman
@ 2012-02-29 23:43 ` Raymond Yau
2012-03-01 1:34 ` Kevin Hilman
2012-03-01 17:25 ` Mark Brown
1 sibling, 1 reply; 26+ messages in thread
From: Raymond Yau @ 2012-02-29 23:43 UTC (permalink / raw)
To: Kevin Hilman; +Cc: alsa-devel
2012/3/1, Kevin Hilman <khilman@ti.com>:
> Raymond Yau <superquad.vortex2@gmail.com> writes:
>
>> Does your headset/mic has a TRRS (Tip, ring, ring, sleeve) connector
>> instead of TRS (Tip, ring, sleeve) connector ?
>
> Yes. It's TRRS.
>
> But below, I tried with a normal stero headset (no mic) which has a TRS
> connector too.
>
>> You can use David's hda-jack-sense-test to find out any jack sense at
>> the node of External mic when you plug the headset , if not , you may
>> need to modify unsol event of headphone to select the external mic ,
>> internal mic.
>
> Here are the results of hda-jack-sense-test
>
> Nothing plugged in:
>
> # hda-jack-sense-test -a
> Pin 0x09 (Green HP Out): present = No
> Pin 0x0a (Not connected): present = No
> Pin 0x0b (Internal Speaker): present = No
> Pin 0x0c (Not connected): present = No
> Pin 0x0d (Internal Mic): present = No
> Pin 0x0e (Not connected): present = No
> Pin 0x0f (Not connected): present = No
> Pin 0x10 (Not connected): present = No
> Pin 0x12 (Not connected): present = No
> Pin 0x15 (Not connected): present = No
>
> With regular stereo headphones with (*no* mic, TRS):
>
> # hda-jack-sense-test -a
> Pin 0x09 (Green HP Out): present = Yes
> Pin 0x0a (Not connected): present = No
> Pin 0x0b (Internal Speaker): present = No
> Pin 0x0c (Not connected): present = No
> Pin 0x0d (Internal Mic): present = No
> Pin 0x0e (Not connected): present = No
> Pin 0x0f (Not connected): present = No
> Pin 0x10 (Not connected): present = No
> Pin 0x12 (Not connected): present = No
> Pin 0x15 (Not connected): present = No
>
> Finally, plugging the headset w/mic (TRRS):
>
> root@eze:~# hda-jack-sense-test -a
> Pin 0x09 (Green HP Out): present = Yes
> Pin 0x0a (Not connected): present = No
> Pin 0x0b (Internal Speaker): present = No
> Pin 0x0c (Not connected): present = No
> Pin 0x0d (Internal Mic): present = No
> Pin 0x0e (Not connected): present = No
> Pin 0x0f (Not connected): present = No
> Pin 0x10 (Not connected): present = No
> Pin 0x12 (Not connected): present = No
> Pin 0x15 (Not connected): present = No
>
> As you can see, there's no detected difference between the TRS and TRRS
> headsets, which is the root of the problem.
can you post the output of alsa-info.sh ?
In the codec info, do you find Misc bit of pin defaults of the node
[jack] Mic at Ext is set ? (i.e. Misc = NO_PRESENCE ) ?
you need to add the mic select code to the unsolicited event of hp
automute speaker
present = snd_hda_jack_detect(codec, 0x9) ;
if (present)
select ext mic
else
select int mic
>
> Since this is a MacBookAir, it dual-boots OSX, and the detection works
> just fine using the same headset under OSX.
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-02-29 23:43 ` Raymond Yau
@ 2012-03-01 1:34 ` Kevin Hilman
2012-03-01 5:56 ` Raymond Yau
0 siblings, 1 reply; 26+ messages in thread
From: Kevin Hilman @ 2012-03-01 1:34 UTC (permalink / raw)
To: Raymond Yau; +Cc: alsa-devel
Raymond Yau <superquad.vortex2@gmail.com> writes:
[...]
>> As you can see, there's no detected difference between the TRS and TRRS
>> headsets, which is the root of the problem.
>
> can you post the output of alsa-info.sh ?
below is the output when the headset w/mic is plugged in
> In the codec info, do you find Misc bit of pin defaults of the node
> [jack] Mic at Ext is set ? (i.e. Misc = NO_PRESENCE ) ?
I don't see any Mic at Ext, but I do see a 'Mic at Int' and it shows
NO_PRESENCE.
Should I be seeing a 2 different Mics? one for internal one for external?
> you need to add the mic select code to the unsolicited event of hp
> automute speaker
>
> present = snd_hda_jack_detect(codec, 0x9) ;
> if (present)
> select ext mic
> else
> select int mic
Not being an ALSA hacker, how exactly does one 'select ext mic' or
'select int mic'?
Looking at sound/pci/hda/patch_cirrus.c (which seems to be the codec I
have), I see cs_automic() doing this. Would calling cs_automic() from
cs_automute() when hp_present=1 do what you're suggesting?
Kevin
upload=true&script=true&cardinfo=
!!################################
!!ALSA Information Script v 0.4.60
!!################################
!!Script ran on: Thu Mar 1 00:04:16 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: [0x31 0x31]
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: [0xb3 0xb3] [0xb3 0xb3]
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=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
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: [0x00 0x00]
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 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 0x90a00110: [Fixed] Mic at Int N/A
Conn = Unknown, Color = Unknown
DefAssociation = 0x1, 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: [0x00 0x00]
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: [0x00 0x00]
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 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--
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-01 1:34 ` Kevin Hilman
@ 2012-03-01 5:56 ` Raymond Yau
2012-03-01 18:22 ` Kevin Hilman
0 siblings, 1 reply; 26+ messages in thread
From: Raymond Yau @ 2012-03-01 5:56 UTC (permalink / raw)
To: Kevin Hilman; +Cc: alsa-devel
2012/3/1, Kevin Hilman <khilman@ti.com>:
> Raymond Yau <superquad.vortex2@gmail.com> writes:
>
> [...]
>
>>> As you can see, there's no detected difference between the TRS and TRRS
>>> headsets, which is the root of the problem.
>>
>> can you post the output of alsa-info.sh ?
>
> below is the output when the headset w/mic is plugged in
>
>> In the codec info, do you find Misc bit of pin defaults of the node
>> [jack] Mic at Ext is set ? (i.e. Misc = NO_PRESENCE ) ?
>
> I don't see any Mic at Ext, but I do see a 'Mic at Int' and it shows
> NO_PRESENCE.
>
> Should I be seeing a 2 different Mics? one for internal one for external?
> 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
Headphone Conn=Combo
but Pincap is OUTPUT only so it cannot be retasked as Input
Does internal mic work or not ?
It Int Mic is correct and 0x06 [Audio Input] is used ,
ext mic may be at 0x0e
you can use hda_analyzer to switch the connection at node 0x6 from 0x0d to 0x0e
to test the external mic
> 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=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
> 0x0d* 0x0e
>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 0x90a00110: [Fixed] Mic at Int N/A
> Conn = Unknown, Color = Unknown
> DefAssociation = 0x1, 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: [0x00 0x00]
> 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
There are also other possibilities 0xc and 0x12 if 0x05 is used
Node 0x05 [Audio Input] wcaps 0x18051b: Stereo Amp-In
Amp-In caps: ofs=0x33, nsteps=0x3f, stepsize=0x03, mute=1
Amp-In vals: [0xb3 0xb3] [0xb3 0xb3]
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
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-02-29 19:08 ` Kevin Hilman
2012-02-29 23:43 ` Raymond Yau
@ 2012-03-01 17:25 ` Mark Brown
2012-03-01 17:46 ` Kevin Hilman
1 sibling, 1 reply; 26+ messages in thread
From: Mark Brown @ 2012-03-01 17:25 UTC (permalink / raw)
To: Kevin Hilman; +Cc: Raymond Yau, alsa-devel
On Wed, Feb 29, 2012 at 11:08:13AM -0800, Kevin Hilman wrote:
> As you can see, there's no detected difference between the TRS and TRRS
> headsets, which is the root of the problem.
Have you tried multiple headset models? I'd not expect a difference but
it's possible (and there are certain headsets with specialist
requirements).
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-01 17:25 ` Mark Brown
@ 2012-03-01 17:46 ` Kevin Hilman
0 siblings, 0 replies; 26+ messages in thread
From: Kevin Hilman @ 2012-03-01 17:46 UTC (permalink / raw)
To: Mark Brown; +Cc: Raymond Yau, alsa-devel
Mark Brown <broonie@opensource.wolfsonmicro.com> writes:
> On Wed, Feb 29, 2012 at 11:08:13AM -0800, Kevin Hilman wrote:
>
>> As you can see, there's no detected difference between the TRS and TRRS
>> headsets, which is the root of the problem.
>
> Have you tried multiple headset models? I'd not expect a difference but
> it's possible (and there are certain headsets with specialist
> requirements).
I've only tried with the 2 different ones I have. One works with Apple
devices and the other with Nokia.
The Apple one is the one that works fine with OSX on this machine.
Kevin
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-01 5:56 ` Raymond Yau
@ 2012-03-01 18:22 ` Kevin Hilman
2012-03-02 1:22 ` Raymond Yau
0 siblings, 1 reply; 26+ messages in thread
From: Kevin Hilman @ 2012-03-01 18:22 UTC (permalink / raw)
To: Raymond Yau; +Cc: alsa-devel
Raymond Yau <superquad.vortex2@gmail.com> writes:
> 2012/3/1, Kevin Hilman <khilman@ti.com>:
>> Raymond Yau <superquad.vortex2@gmail.com> writes:
>>
>> [...]
>>
>>>> As you can see, there's no detected difference between the TRS and TRRS
>>>> headsets, which is the root of the problem.
>>>
>>> can you post the output of alsa-info.sh ?
>>
>> below is the output when the headset w/mic is plugged in
>>
>>> In the codec info, do you find Misc bit of pin defaults of the node
>>> [jack] Mic at Ext is set ? (i.e. Misc = NO_PRESENCE ) ?
>>
>> I don't see any Mic at Ext, but I do see a 'Mic at Int' and it shows
>> NO_PRESENCE.
>>
>> Should I be seeing a 2 different Mics? one for internal one for external?
>
>> 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
>
> Headphone Conn=Combo
> but Pincap is OUTPUT only so it cannot be retasked as Input
>
> Does internal mic work or not ?
Yes, it works fine.
> It Int Mic is correct and 0x06 [Audio Input] is used ,
>
> ext mic may be at 0x0e
>
> you can use hda_analyzer to switch the connection at node 0x6 from 0x0d to 0x0e
> to test the external mic
Here's what I tried:
Selecting Node 0x6, I changed the connection from 0xd to 0xe.
Selecting Node 0xe, I checked the 'IN' box under Widget control (which
is what 0xd had enabled.), then changed the Val[0] and Val[1] sliders
from 0 to 2 under Input Amplifier.
Still no input detected from the headset mic.
FWIW, I'm using the 'Input level' indicator in the Input tab of the
Sound settings in the Ubuntu control panel to check if the input is
working.
>
>> 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=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
>> 0x0d* 0x0e
>
>>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 0x90a00110: [Fixed] Mic at Int N/A
>> Conn = Unknown, Color = Unknown
>> DefAssociation = 0x1, 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: [0x00 0x00]
>> 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
>
>
> There are also other possibilities 0xc and 0x12 if 0x05 is used
>
>
> Node 0x05 [Audio Input] wcaps 0x18051b: Stereo Amp-In
> Amp-In caps: ofs=0x33, nsteps=0x3f, stepsize=0x03, mute=1
> Amp-In vals: [0xb3 0xb3] [0xb3 0xb3]
> 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
OK, I selected Node 0x5, and un-checked the mute box for the 4 sliders
under Input amplifier, and increased the sliders to the max of 63.
The 0xc connection was the default, so I started with that one.
Selecting Node 0xc, I checked the 'IN' box under widget control and
changed the 2 Val sliders under Input Amplifier from 0 to 3.
Still nothing detected on headset mic.
Under 0x05, I then selected the 0x12 connection. Selecting Node 0x12, I
again selected the 'IN' box under widget control and increased the 2 Val
sliders from 0 to 3.
Still nothing.
Kevin
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-01 18:22 ` Kevin Hilman
@ 2012-03-02 1:22 ` Raymond Yau
2012-03-02 19:32 ` Kevin Hilman
0 siblings, 1 reply; 26+ messages in thread
From: Raymond Yau @ 2012-03-02 1:22 UTC (permalink / raw)
To: Kevin Hilman; +Cc: alsa-devel
2012/3/2, Kevin Hilman <khilman@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 ?
>>>>
>>>> can you post the output of alsa-info.sh ?
>>>
>>> below is the output when the headset w/mic is plugged in
>>>
>>>> In the codec info, do you find Misc bit of pin defaults of the node
>>>> [jack] Mic at Ext is set ? (i.e. Misc = NO_PRESENCE ) ?
>>>
>>> I don't see any Mic at Ext, but I do see a 'Mic at Int' and it shows
>>> NO_PRESENCE.
>>>
>>> Should I be seeing a 2 different Mics? one for internal one for
>>> external?
the functions parse_input() and change_cur_input() in patch_cirrus.c
seem expect ext mic and int mic for auto mic detection
e.g.
/* check whether the automatic mic switch is available */
if (spec->num_inputs == 2 &&
cfg->inputs[0].type == AUTO_PIN_MIC &&
cfg->inputs[1].type == AUTO_PIN_MIC) {
so it won't switch mic automatically when there is one mic pin
if (spec->cur_adc && spec->cur_adc != spec->adc_nid[idx]) {
/* stream is running, let's swap the current ADC */
it swap the ADC if the external mic and internal mic are connected to
different ADCs
but there is no mic connected to other ADC
>>
>>> 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
>>
>> Headphone Conn=Combo
>> but Pincap is OUTPUT only so it cannot be retasked as Input
>>
>> Does internal mic work or not ?
>
> Yes, it works fine.
>
arecord --vumeter=stereo -f CD -Dhw:0,0 foo.wav
does the vumeters change when you change the sliders of node 0x0d or
0x06 in hda-analyzer ?
>> It Int Mic is correct and 0x06 [Audio Input] is used ,
>>
>> ext mic may be at 0x0e
>>
>> you can use hda_analyzer to switch the connection at node 0x6 from 0x0d to
>> 0x0e
>> to test the external mic
>
> Here's what I tried:
>
> Selecting Node 0x6, I changed the connection from 0xd to 0xe.
> Selecting Node 0xe, I checked the 'IN' box under Widget control (which
> is what 0xd had enabled.), then changed the Val[0] and Val[1] sliders
> from 0 to 2 under Input Amplifier.
>
> Still no input detected from the headset mic.
>
> FWIW, I'm using the 'Input level' indicator in the Input tab of the
> Sound settings in the Ubuntu control panel to check if the input is
> working.
>
pulseaudio just sum the stereo input to mono , and you get silence if
the left/right channel is out of phase
>>
>>> 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=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
>>> 0x0d* 0x0e
>>
>>>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 0x90a00110: [Fixed] Mic at Int N/A
>>> Conn = Unknown, Color = Unknown
>>> DefAssociation = 0x1, 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: [0x00 0x00]
>>> 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
>>
>>
>> There are also other possibilities 0xc and 0x12 if 0x05 is used
>>
>>
>> Node 0x05 [Audio Input] wcaps 0x18051b: Stereo Amp-In
>> Amp-In caps: ofs=0x33, nsteps=0x3f, stepsize=0x03, mute=1
>> Amp-In vals: [0xb3 0xb3] [0xb3 0xb3]
>> 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
>
> OK, I selected Node 0x5, and un-checked the mute box for the 4 sliders
> under Input amplifier, and increased the sliders to the max of 63.
> The 0xc connection was the default, so I started with that one.
> Selecting Node 0xc, I checked the 'IN' box under widget control and
> changed the 2 Val sliders under Input Amplifier from 0 to 3.
>
> Still nothing detected on headset mic.
>
http://git.alsa-project.org/?p=alsa-kernel.git;a=blob_plain;f=Documentation/sound/alsa/HD-Audio.txt
you need to use hda-jack-retask or early patching to change the pin
default of node 0xe, 0xc or 0x12 default to "ext mic"
either hda-reconfig or early patching if node 0x0e, 0x0c 0r 0x12 is ext mic
> Under 0x05, I then selected the 0x12 connection. Selecting Node 0x12, I
> again selected the 'IN' box under widget control and increased the 2 Val
> sliders from 0 to 3.
>
> Still nothing.
>
Only the pincap of node 0xc and 0xd support jack detect , and node
0x0e and 0x12
Node 0x0c [Pin Complex] wcaps 0x41048b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00]
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 0x12 [Pin Complex] wcaps 0x41000b: Stereo Amp-In
Amp-In caps: ofs=0x00, nsteps=0x02, stepsize=0x27, mute=0
Amp-In vals: [0x00 0x00]
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
the last resort is to use hda-verb to check jack detect of pin 0xd,
0xe, 0xc and 0x12
hda-verb /dev/snd/hwC0D0 0x0d GET_PIN_SENSE 0
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-02 1:22 ` Raymond Yau
@ 2012-03-02 19:32 ` Kevin Hilman
2012-03-05 1:10 ` Raymond Yau
0 siblings, 1 reply; 26+ messages in thread
From: Kevin Hilman @ 2012-03-02 19:32 UTC (permalink / raw)
To: Raymond Yau; +Cc: alsa-devel
Raymond Yau <superquad.vortex2@gmail.com> writes:
> 2012/3/2, Kevin Hilman <khilman@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.
>>>>>
>>>>> can you post the output of alsa-info.sh ?
>>>>
>>>> below is the output when the headset w/mic is plugged in
>>>>
>>>>> In the codec info, do you find Misc bit of pin defaults of the node
>>>>> [jack] Mic at Ext is set ? (i.e. Misc = NO_PRESENCE ) ?
>>>>
>>>> I don't see any Mic at Ext, but I do see a 'Mic at Int' and it shows
>>>> NO_PRESENCE.
>>>>
>>>> Should I be seeing a 2 different Mics? one for internal one for
>>>> external?
>
> the functions parse_input() and change_cur_input() in patch_cirrus.c
> seem expect ext mic and int mic for auto mic detection
>
> e.g.
>
> /* check whether the automatic mic switch is available */
> if (spec->num_inputs == 2 &&
> cfg->inputs[0].type == AUTO_PIN_MIC &&
> cfg->inputs[1].type == AUTO_PIN_MIC) {
>
> so it won't switch mic automatically when there is one mic pin
>
>
> if (spec->cur_adc && spec->cur_adc != spec->adc_nid[idx]) {
> /* stream is running, let's swap the current ADC */
>
> it swap the ADC if the external mic and internal mic are connected to
> different ADCs
>
> but there is no mic connected to other ADC
>
>
>>>
>>>> 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
>>>
>>> Headphone Conn=Combo
>>> but Pincap is OUTPUT only so it cannot be retasked as Input
>>>
>>> Does internal mic work or not ?
>>
>> Yes, it works fine.
>>
>
> arecord --vumeter=stereo -f CD -Dhw:0,0 foo.wav
>
> does the vumeters change when you change the sliders of node 0x0d or
> 0x06 in hda-analyzer ?
Yes. The sliders in either 0xd or 0x6 affect the input level.
>>> It Int Mic is correct and 0x06 [Audio Input] is used ,
>>>
>>> ext mic may be at 0x0e
>>>
>>> you can use hda_analyzer to switch the connection at node 0x6 from 0x0d to
>>> 0x0e
>>> to test the external mic
>>
>> Here's what I tried:
>>
>> Selecting Node 0x6, I changed the connection from 0xd to 0xe.
>> Selecting Node 0xe, I checked the 'IN' box under Widget control (which
>> is what 0xd had enabled.), then changed the Val[0] and Val[1] sliders
>> from 0 to 2 under Input Amplifier.
>>
>> Still no input detected from the headset mic.
>>
>> FWIW, I'm using the 'Input level' indicator in the Input tab of the
>> Sound settings in the Ubuntu control panel to check if the input is
>> working.
>>
>
> pulseaudio just sum the stereo input to mono , and you get silence if
> the left/right channel is out of phase
>
>>>
>>>> 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=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
>>>> 0x0d* 0x0e
>>>
>>>>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 0x90a00110: [Fixed] Mic at Int N/A
>>>> Conn = Unknown, Color = Unknown
>>>> DefAssociation = 0x1, 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: [0x00 0x00]
>>>> 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
>>>
>>>
>>> There are also other possibilities 0xc and 0x12 if 0x05 is used
>>>
>>>
>>> Node 0x05 [Audio Input] wcaps 0x18051b: Stereo Amp-In
>>> Amp-In caps: ofs=0x33, nsteps=0x3f, stepsize=0x03, mute=1
>>> Amp-In vals: [0xb3 0xb3] [0xb3 0xb3]
>>> 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
>>
>> OK, I selected Node 0x5, and un-checked the mute box for the 4 sliders
>> under Input amplifier, and increased the sliders to the max of 63.
>> The 0xc connection was the default, so I started with that one.
>> Selecting Node 0xc, I checked the 'IN' box under widget control and
>> changed the 2 Val sliders under Input Amplifier from 0 to 3.
>>
>> Still nothing detected on headset mic.
>>
>
> http://git.alsa-project.org/?p=alsa-kernel.git;a=blob_plain;f=Documentation/sound/alsa/HD-Audio.txt
>
> you need to use hda-jack-retask or early patching to change the pin
> default of node 0xe, 0xc or 0x12 default to "ext mic"
Using hda-jack-retask, under the Cirrus codec, I only saw options for
0x9, 0xb and 0xd. 0xd has 4 options: Microphone, Line In, Internal
mic, and Not connected. I tried all 4 of these and none resulted in
input from the headset mic. Microphone and Internal Mic both were the
built-in internal mic, the other 2 stopped the internal mic from
working, but didn't get the headset mic working.
I had to 'Show unconnected pins' in order to see the rest of the nodes.
For 0xe, 0xc and 0x12, the options are only 'Internal Mic' and 'Not
connected' and the default was Not connected for all of them. I tried
switching them each to 'Internal Mic' but still don't get anything from
the headset mic.
Note that I had to reboot for each of these tests since the 'Apply now'
feature of hda-jack-retask didn't work. I always reported:
tee: /sys/class/sound/hwC0D0/reconfig: Device or resource busy
even with pulseaudio not running and fuser didn't report anyone using
/dev/snd/*
> either hda-reconfig or early patching if node 0x0e, 0x0c 0r 0x12 is ext mic
>
>
>> Under 0x05, I then selected the 0x12 connection. Selecting Node 0x12, I
>> again selected the 'IN' box under widget control and increased the 2 Val
>> sliders from 0 to 3.
>>
>> Still nothing.
>>
>
> Only the pincap of node 0xc and 0xd support jack detect , and node
> 0x0e and 0x12
Did you mean to finish a thought here... ?
>
> Node 0x0c [Pin Complex] wcaps 0x41048b: Stereo Amp-In
> Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x27, mute=0
> Amp-In vals: [0x00 0x00]
> 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 0x12 [Pin Complex] wcaps 0x41000b: Stereo Amp-In
> Amp-In caps: ofs=0x00, nsteps=0x02, stepsize=0x27, mute=0
> Amp-In vals: [0x00 0x00]
> 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
>
>
>
> the last resort is to use hda-verb to check jack detect of pin 0xd,
> 0xe, 0xc and 0x12
>
>
> hda-verb /dev/snd/hwC0D0 0x0d GET_PIN_SENSE 0
With the headset plugged in:
$ sudo hda-verb /dev/snd/hwC0D0 0x0d GET_PIN_SENSE 0
nid = 0xd, verb = 0xf09, param = 0x0
value = 0x0
$ sudo hda-verb /dev/snd/hwC0D0 0x0e GET_PIN_SENSE 0
nid = 0xe, verb = 0xf09, param = 0x0
value = 0x0
$ sudo hda-verb /dev/snd/hwC0D0 0x0c GET_PIN_SENSE 0
nid = 0xc, verb = 0xf09, param = 0x0
value = 0x0
$ sudo hda-verb /dev/snd/hwC0D0 0x12 GET_PIN_SENSE 0
nid = 0x12, verb = 0xf09, param = 0x0
value = 0x0
And the same result with the headset unplugged.
Thanks again for all your advice and ideas to test. I'll be glad to
keep doing experiments.
Kevin
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-02 19:32 ` Kevin Hilman
@ 2012-03-05 1:10 ` Raymond Yau
2012-03-05 17:36 ` Kevin Hilman
0 siblings, 1 reply; 26+ messages in thread
From: Raymond Yau @ 2012-03-05 1:10 UTC (permalink / raw)
To: alsa-devel
2012/3/3, Kevin Hilman <khilman@ti.com>:
> Raymond Yau <superquad.vortex2@gmail.com> writes:
>
>> 2012/3/2, Kevin Hilman <khilman@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).
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-05 1:10 ` Raymond Yau
@ 2012-03-05 17:36 ` Kevin Hilman
2012-03-06 1:28 ` Raymond Yau
0 siblings, 1 reply; 26+ messages in thread
From: Kevin Hilman @ 2012-03-05 17:36 UTC (permalink / raw)
To: Raymond Yau; +Cc: alsa-devel
Raymond Yau <superquad.vortex2@gmail.com> writes:
> 2012/3/3, Kevin Hilman <khilman@ti.com>:
>> Raymond Yau <superquad.vortex2@gmail.com> writes:
>>
>>> 2012/3/2, Kevin Hilman <khilman@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?
Kevin
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-05 17:36 ` Kevin Hilman
@ 2012-03-06 1:28 ` Raymond Yau
2012-03-06 6:44 ` Takashi Iwai
0 siblings, 1 reply; 26+ messages in thread
From: Raymond Yau @ 2012-03-06 1:28 UTC (permalink / raw)
To: alsa-devel; +Cc: Takashi Iwai
2012/3/6, Kevin Hilman <khilman@ti.com>:
> Raymond Yau <superquad.vortex2@gmail.com> writes:
>
>> 2012/3/3, Kevin Hilman <khilman@ti.com>:
>>> Raymond Yau <superquad.vortex2@gmail.com> writes:
>>>
>>>> 2012/3/2, Kevin Hilman <khilman@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
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-06 1:28 ` Raymond Yau
@ 2012-03-06 6:44 ` Takashi Iwai
2012-03-06 20:25 ` Kevin Hilman
0 siblings, 1 reply; 26+ messages in thread
From: Takashi Iwai @ 2012-03-06 6:44 UTC (permalink / raw)
To: Raymond Yau; +Cc: alsa-devel
At Tue, 6 Mar 2012 09:28:12 +0800,
Raymond Yau wrote:
>
> 2012/3/6, Kevin Hilman <khilman@ti.com>:
> > Raymond Yau <superquad.vortex2@gmail.com> writes:
> >
> >> 2012/3/3, Kevin Hilman <khilman@ti.com>:
> >>> Raymond Yau <superquad.vortex2@gmail.com> writes:
> >>>
> >>>> 2012/3/2, Kevin Hilman <khilman@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.
At best, ask Cirrus guys such information.
Takashi
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-06 6:44 ` Takashi Iwai
@ 2012-03-06 20:25 ` Kevin Hilman
2012-03-06 20:32 ` Takashi Iwai
0 siblings, 1 reply; 26+ messages in thread
From: Kevin Hilman @ 2012-03-06 20:25 UTC (permalink / raw)
To: Takashi Iwai; +Cc: Raymond Yau, alsa-devel
Takashi Iwai <tiwai@suse.de> writes:
> At Tue, 6 Mar 2012 09:28:12 +0800,
> Raymond Yau wrote:
>>
>> 2012/3/6, Kevin Hilman <khilman@ti.com>:
>> > Raymond Yau <superquad.vortex2@gmail.com> writes:
>> >
>> >> 2012/3/3, Kevin Hilman <khilman@ti.com>:
>> >>> Raymond Yau <superquad.vortex2@gmail.com> writes:
>> >>>
>> >>>> 2012/3/2, Kevin Hilman <khilman@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. :(
Kevin
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-06 20:25 ` Kevin Hilman
@ 2012-03-06 20:32 ` Takashi Iwai
2012-03-09 17:16 ` Kevin Hilman
0 siblings, 1 reply; 26+ messages in thread
From: Takashi Iwai @ 2012-03-06 20:32 UTC (permalink / raw)
To: Kevin Hilman; +Cc: Raymond Yau, alsa-devel
At Tue, 06 Mar 2012 12:25:12 -0800,
Kevin Hilman wrote:
>
> Takashi Iwai <tiwai@suse.de> writes:
>
> > At Tue, 6 Mar 2012 09:28:12 +0800,
> > Raymond Yau wrote:
> >>
> >> 2012/3/6, Kevin Hilman <khilman@ti.com>:
> >> > Raymond Yau <superquad.vortex2@gmail.com> writes:
> >> >
> >> >> 2012/3/3, Kevin Hilman <khilman@ti.com>:
> >> >>> Raymond Yau <superquad.vortex2@gmail.com> writes:
> >> >>>
> >> >>>> 2012/3/2, Kevin Hilman <khilman@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...
Takashi
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-06 20:32 ` Takashi Iwai
@ 2012-03-09 17:16 ` Kevin Hilman
2012-03-14 0:50 ` Raymond Yau
0 siblings, 1 reply; 26+ messages in thread
From: Kevin Hilman @ 2012-03-09 17:16 UTC (permalink / raw)
To: Takashi Iwai; +Cc: Raymond Yau, alsa-devel
Takashi Iwai <tiwai@suse.de> writes:
> At Tue, 06 Mar 2012 12:25:12 -0800,
> Kevin Hilman wrote:
>>
>> Takashi Iwai <tiwai@suse.de> writes:
>>
>> > At Tue, 6 Mar 2012 09:28:12 +0800,
>> > Raymond Yau wrote:
>> >>
>> >> 2012/3/6, Kevin Hilman <khilman@ti.com>:
>> >> > Raymond Yau <superquad.vortex2@gmail.com> writes:
>> >> >
>> >> >> 2012/3/3, Kevin Hilman <khilman@ti.com>:
>> >> >>> Raymond Yau <superquad.vortex2@gmail.com> writes:
>> >> >>>
>> >> >>>> 2012/3/2, Kevin Hilman <khilman@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.
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-09 17:16 ` Kevin Hilman
@ 2012-03-14 0:50 ` Raymond Yau
2012-03-15 18:03 ` Kevin Hilman
2012-03-20 18:14 ` Kevin Hilman
0 siblings, 2 replies; 26+ messages in thread
From: Raymond Yau @ 2012-03-14 0:50 UTC (permalink / raw)
To: Kevin Hilman; +Cc: alsa-devel
2012/3/10, Kevin Hilman <khilman@ti.com>:
>
> 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)
>
do you mean that you cannot record mono using sysdefault which use a
route to copy left channel channel to both if the internal mic is at
the right channel?
arecord --vumeter=mono -c 1 -f S16_LE -r 48000 -Dsysdefault /dev/null
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-14 0:50 ` Raymond Yau
@ 2012-03-15 18:03 ` Kevin Hilman
2012-03-15 23:57 ` Raymond Yau
2012-03-20 18:14 ` Kevin Hilman
1 sibling, 1 reply; 26+ messages in thread
From: Kevin Hilman @ 2012-03-15 18:03 UTC (permalink / raw)
To: Raymond Yau; +Cc: alsa-devel
Raymond Yau <superquad.vortex2@gmail.com> writes:
> 2012/3/10, Kevin Hilman <khilman@ti.com>:
>>
>> 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)
>>
>
> do you mean that you cannot record mono using sysdefault which use a
> route to copy left channel channel to both if the internal mic is at
> the right channel?
>
> arecord --vumeter=mono -c 1 -f S16_LE -r 48000 -Dsysdefault /dev/null
Not sure exactly what you mean by sysdefault, but trying that fails:
$ arecord --vumeter=mono -c 1 -f S16_LE -r 48000 -Dsysdefault /dev/null
ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM sysdefault
arecord: main:660: audio open error: No such file or directory
Kevin
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-15 18:03 ` Kevin Hilman
@ 2012-03-15 23:57 ` Raymond Yau
0 siblings, 0 replies; 26+ messages in thread
From: Raymond Yau @ 2012-03-15 23:57 UTC (permalink / raw)
To: Kevin Hilman; +Cc: alsa-devel
2012/3/16, Kevin Hilman <khilman@ti.com>:
> Raymond Yau <superquad.vortex2@gmail.com> writes:
>
>> 2012/3/10, Kevin Hilman <khilman@ti.com>:
>>>
>>> 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)
>>>
>>
>> do you mean that you cannot record mono using sysdefault which use a
>> route to copy left channel channel to both if the internal mic is at
>> the right channel?
>>
>> arecord --vumeter=mono -c 1 -f S16_LE -r 48000 -Dsysdefault /dev/null
>
> Not sure exactly what you mean by sysdefault, but trying that fails:
>
> $ arecord --vumeter=mono -c 1 -f S16_LE -r 48000 -Dsysdefault /dev/null
> ALSA lib pcm.c:2212:(snd_pcm_open_noupdate) Unknown PCM sysdefault
> arecord: main:660: audio open error: No such file or directory
>
> Kevin
>
http://git.alsa-project.org/?p=alsa-lib.git;a=commit;h=e6f990e5c9be5cac6f36924d20a75d0f69d27297
pcm.default cards.pcm.default
+pcm.sysdefault cards.pcm.default
pcm.front cards.pcm.front
http://git.alsa-project.org/?p=alsa-lib.git;a=blob;f=src/conf/cards/HDA-Intel.conf
HDA-Intel.pcm.default
capture.pcm {
# to avoid possible phase inversions with digital mics
route_policy copy
^ permalink raw reply [flat|nested] 26+ messages in thread
* Re: HDA intel, wired headset w/mic, jack mic detect
2012-03-14 0:50 ` Raymond Yau
2012-03-15 18:03 ` Kevin Hilman
@ 2012-03-20 18:14 ` Kevin Hilman
1 sibling, 0 replies; 26+ messages in thread
From: Kevin Hilman @ 2012-03-20 18:14 UTC (permalink / raw)
To: Raymond Yau; +Cc: alsa-devel
Raymond Yau <superquad.vortex2@gmail.com> writes:
> 2012/3/10, Kevin Hilman <khilman@ti.com>:
>>
>> 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)
>>
>
> do you mean that you cannot record mono using sysdefault which use a
> route to copy left channel channel to both if the internal mic is at
> the right channel?
>
> arecord --vumeter=mono -c 1 -f S16_LE -r 48000 -Dsysdefault /dev/null
That is correct.
Using this command, I cannot record mono using the internal mic.
Kevin
^ permalink raw reply [flat|nested] 26+ messages in thread
end of thread, other threads:[~2012-03-20 18:15 UTC | newest]
Thread overview: 26+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-02-23 19:09 HDA intel, wired headset w/mic, jack mic detect Kevin Hilman
2012-02-24 6:25 ` David Henningsson
2012-02-28 17:55 ` Hilman, Kevin
2012-02-28 18:00 ` Mark Brown
2012-02-29 15:05 ` Raymond Yau
2012-02-29 15:26 ` Mark Brown
2012-02-29 19:08 ` Kevin Hilman
2012-02-29 23:43 ` Raymond Yau
2012-03-01 1:34 ` Kevin Hilman
2012-03-01 5:56 ` Raymond Yau
2012-03-01 18:22 ` Kevin Hilman
2012-03-02 1:22 ` Raymond Yau
2012-03-02 19:32 ` Kevin Hilman
2012-03-05 1:10 ` Raymond Yau
2012-03-05 17:36 ` Kevin Hilman
2012-03-06 1:28 ` Raymond Yau
2012-03-06 6:44 ` Takashi Iwai
2012-03-06 20:25 ` Kevin Hilman
2012-03-06 20:32 ` Takashi Iwai
2012-03-09 17:16 ` Kevin Hilman
2012-03-14 0:50 ` Raymond Yau
2012-03-15 18:03 ` Kevin Hilman
2012-03-15 23:57 ` Raymond Yau
2012-03-20 18:14 ` Kevin Hilman
2012-03-01 17:25 ` Mark Brown
2012-03-01 17:46 ` Kevin Hilman
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).