driver seem hardcode to use first pin spec->gen.autocfg.hp_pins[0] as hp
of the headset

and imux_pin to determine the selected mic

this mean that if you set the correct pin default of headset mic
(headset mic phantom jack)

you can select  internal mic, headset mic or mic jack manually using the
capture source control


static void alc_update_headset_mode(struct hda_codec *codec)
{
        struct alc_spec *spec = codec->spec;

        hda_nid_t mux_pin = spec->gen.imux_pins[spec->gen.cur_mux[0]];
        hda_nid_t hp_pin = spec->gen.autocfg.hp_pins[0];

        int new_headset_mode;

        if (!snd_hda_jack_detect(codec, hp_pin))
                new_headset_mode = ALC_HEADSET_MODE_UNPLUGGED;
        else if (mux_pin == spec->headset_mic_pin)
                new_headset_mode = ALC_HEADSET_MODE_HEADSET;
        else if (mux_pin == spec->headphone_mic_pin)
                new_headset_mode = ALC_HEADSET_MODE_MIC;
        else
                new_headset_mode = ALC_HEADSET_MODE_HEADPHONE;

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1302090

Title:
  Dell Alienware 14, Speaker sound output is mono until a headphone jack
  is plugged

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/1302090/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to