[alsa-devel] [PATCH 2/2] ALSA: hda - give 3-pin jack the name "Headphone Mic Jack"
Takashi Iwai
tiwai at suse.de
Wed Jun 27 20:26:39 CEST 2012
At Wed, 27 Jun 2012 18:45:45 +0200,
David Henningsson wrote:
>
> This 3-pin jack was labeled "Headphone Jack", but it could also be
> used as a mic jack just by switching "Input Source". Therefore we need
> to call the jack something else, to make sure PulseAudio can use the
> speaker together with the external mic. (PulseAudio might mute the
> speaker if it detects a headphone being plugged in.)
>
> Signed-off-by: David Henningsson <david.henningsson at canonical.com>
Applied. Thanks.
Takashi
> ---
> sound/pci/hda/patch_realtek.c | 22 ++++++++++++++++++++--
> 1 file changed, 20 insertions(+), 2 deletions(-)
>
> diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
> index 6174d4a..7189e07 100644
> --- a/sound/pci/hda/patch_realtek.c
> +++ b/sound/pci/hda/patch_realtek.c
> @@ -2001,13 +2001,31 @@ static int __alc_build_controls(struct hda_codec *codec)
> return 0;
> }
>
> -static int alc_build_controls(struct hda_codec *codec)
> +static int alc_build_jacks(struct hda_codec *codec)
> {
> struct alc_spec *spec = codec->spec;
> +
> + if (spec->shared_mic_hp) {
> + int err;
> + int nid = spec->autocfg.inputs[1].pin;
> + err = snd_hda_jack_add_kctl(codec, nid, "Headphone Mic", 0);
> + if (err < 0)
> + return err;
> + err = snd_hda_jack_detect_enable(codec, nid, 0);
> + if (err < 0)
> + return err;
> + }
> +
> + return snd_hda_jack_add_kctls(codec, &spec->autocfg);
> +}
> +
> +static int alc_build_controls(struct hda_codec *codec)
> +{
> int err = __alc_build_controls(codec);
> if (err < 0)
> return err;
> - err = snd_hda_jack_add_kctls(codec, &spec->autocfg);
> +
> + err = alc_build_jacks(codec);
> if (err < 0)
> return err;
> alc_apply_fixup(codec, ALC_FIXUP_ACT_BUILD);
> --
> 1.7.9.5
>
More information about the Alsa-devel
mailing list