From d1f7ac09831de80c227bbffc92a978177408273d Mon Sep 17 00:00:00 2001 From: Takashi Iwai Date: Thu, 12 Mar 2009 16:45:01 +0100 Subject: [PATCH] --- yaml --- r: 133119 b: refs/heads/master c: 3b7523fc828e41b2988feb400704e01b67859d78 h: refs/heads/master i: 133117: ce528dd6f4cc9fb486bddad9d91fd85431a3cba8 133115: ab9c29f1a48f18db39e81d24ea0aaf779d9b5934 133111: ca2a1c7587f14461a3b2f25e9b9acb5e99d94375 133103: f67dcee08c9d5e9433f44968e3a3227866176a9b 133087: cc8bedac3533b901e6587ac770e182f2c3e93c3f 133055: 46c542a8f4ccc2620502257704d4722a9b23a72e 132991: 4937a0b17a662c1e9546b7f8cfdba6773388f8fd 132863: 6c9085178abd75d58cbfec5e90a66b5ad2140de5 132607: 305e076549e209f8ace0f0df71e74075d45d7717 132095: 6a108b32c4d4a626d199403b5e12ab8b5b11f7a2 131071: 5e1d55329a1e76f29215b146a22e31dd45999a04 v: v3 --- [refs] | 2 +- trunk/sound/pci/hda/patch_conexant.c | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index fda6f89866cc..36eb238227e3 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 5d75bc557859805f00eeddb09d7cc8ffc7e5334e +refs/heads/master: 3b7523fc828e41b2988feb400704e01b67859d78 diff --git a/trunk/sound/pci/hda/patch_conexant.c b/trunk/sound/pci/hda/patch_conexant.c index 6cb184e9c2f1..bc016fade192 100644 --- a/trunk/sound/pci/hda/patch_conexant.c +++ b/trunk/sound/pci/hda/patch_conexant.c @@ -1196,6 +1196,10 @@ static int cxt5047_hp_master_sw_put(struct snd_kcontrol *kcontrol, * the headphone jack */ bits = (!spec->hp_present && spec->cur_eapd) ? 0 : HDA_AMP_MUTE; + /* NOTE: Conexat codec needs the index for *OUTPUT* amp of + * pin widgets unlike other codecs. In this case, we need to + * set index 0x01 for the volume from the mixer amp 0x19. + */ snd_hda_codec_amp_stereo(codec, 0x1d, HDA_OUTPUT, 0x01, HDA_AMP_MUTE, bits); bits = spec->cur_eapd ? 0 : HDA_AMP_MUTE; @@ -1214,6 +1218,7 @@ static void cxt5047_hp_automute(struct hda_codec *codec) AC_VERB_GET_PIN_SENSE, 0) & 0x80000000; bits = (spec->hp_present || !spec->cur_eapd) ? HDA_AMP_MUTE : 0; + /* See the note in cxt5047_hp_master_sw_put */ snd_hda_codec_amp_stereo(codec, 0x1d, HDA_OUTPUT, 0x01, HDA_AMP_MUTE, bits); } @@ -1276,6 +1281,7 @@ static struct snd_kcontrol_new cxt5047_base_mixers[] = { }; static struct snd_kcontrol_new cxt5047_hp_spk_mixers[] = { + /* See the note in cxt5047_hp_master_sw_put */ HDA_CODEC_VOLUME("Speaker Playback Volume", 0x1d, 0x01, HDA_OUTPUT), HDA_CODEC_VOLUME("Headphone Playback Volume", 0x13, 0x00, HDA_OUTPUT), {}