[alsa-devel] [PATCH v2 1/2] ALSA: jack: create jack kcontrols for every jack input device

Jie, Yang yang.jie at intel.com
Wed Mar 25 14:53:08 CET 2015


Thank you for comprehensive summarizing, David.
Can you help give more description as below?

~Keyon

> -----Original Message-----
> From: David Henningsson [mailto:david.henningsson at canonical.com]
> Sent: Monday, March 23, 2015 7:51 PM
> To: Tanu Kaskinen; Takashi Iwai
> Cc: Jie, Yang; perex at perex.cz; broonie at kernel.org; alsa-devel at alsa-
> project.org; Girdwood, Liam R; Liam Girdwood
> Subject: Re: [PATCH v2 1/2] ALSA: jack: create jack kcontrols for every jack
> input device
> 
> 
> 
> On 2015-03-23 11:56, Tanu Kaskinen wrote:
> > One thing that is unclear for me is that how are those jacks
> > represented that support any of headsets/headphones/microphones, but
> > don't provide information about which device type has been plugged in.
> 
> For headphone or headset, independent switches:
> 
>   * "Headphone Jack"
>   * "Headset Mic Jack"
[Keyon] here for the most common headset jack
(SND_JACK_HEADPHONE | SND_JACK_MICROPHONE), we should create
two independent kctls/switches--"Headphone Jack" + "Headset Mic Jack",
right?

so, is it possible that there is only "Mic Jack" in this case? I mean that
only input(no output, no physical headphone/speaker jack) jack exist.

If yes, then we may need change "Headset Mic Jack" to "Mic Jack"?

> 
> For headphone or headset, one hw switch only:
[Keyon] I am sorry I am not familiar with the jack HW circuit. What "one 
hw switch only" here means? Does it means that -- for headset Jack, the 
status(connected/disconnected) of HP pin is always exactly same with 
that of Mic pin?
> 
>   * "Headphone Jack"
>   * "Headset Mic Phantom Jack"
[Keyon] for Headset of this type, do we need create only "Headset Mic 
Phantom Jack" kctl, or "Headphone Jack" kctl is also needed?
> 
> Headphone or mic, one hw switch:
[Keyon]I am fresh about this kind of hw jack, it should use different 
segment of the plug, seems we don't need check the actual connected 
status at the jack creation stage, just creating "Headphone Mic Jack"
should works, right?
> 
>   * "Headphone Mic Jack"
> 
> Headphone, headset, or mic, one hw switch only:
[Keyon] how many kctls should we create for this?
> 
>   * "Headphone Mic Jack"
>   * "Headset Mic Phantom Jack"
> 
> Headphone, headset, or mic, one switch for hp/mic and the other for the
> headset mic:
[Keyon] I can't imagine how this works, it's too messy for me. :(
> 
>   * "Headphone Mic Jack"
>   * "Headset Mic Jack"
> 
> The first one is the most common one, but all of the other ones exist,
> especially on recent Dell machines.
> 
> > I know David
> > has made a UI for Ubuntu for selecting the device type once something
> > has been plugged in to such jack, but I don't remember how the UI can
> > know that the jack supports all of those three device types.
> 
> For reference, the code is here:
> http://bazaar.launchpad.net/~unity-settings-daemon-team/unity-settings-
> daemon/trunk/files/head:/plugins/media-keys/what-did-you-plug-in/
> 
> --
> David Henningsson, Canonical Ltd.
> https://launchpad.net/~diwic


More information about the Alsa-devel mailing list