Re: [PATCH] hda: enable speaker output of HP 2510p

Takashi Iwai
2009-08-16T09:24:20Z

At Sun, 16 Aug 2009 17:05:13 +0800,
Wu Fengguang wrote:
>
> The Speaker/HP volumes of 2510p is binded, so shall the mute state.
>
> Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>

Actually it wasn't needed because EAPD disables the speaker output.
But additional muting is harmless, though.

Takashi

> ---
> sound/pci/hda/patch_analog.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
> --- sound-2.6.orig/sound/pci/hda/patch_analog.c 2009-08-16 16:59:20.000000000 +0800
> +++ sound-2.6/sound/pci/hda/patch_analog.c 2009-08-16 17:01:34.000000000 +0800
> @@ -1512,7 +1512,7 @@ static struct hda_verb ad1981_hp_init_ve
> {}
> };
>
> -/* turn on/off EAPD (+ mute HP) as a master switch */
> +/* turn on/off EAPD (+ mute Speaker/HP) as a master switch */
> static int ad1981_hp_master_sw_put(struct snd_kcontrol *kcontrol,
> struct snd_ctl_elem_value *ucontrol)
> {
> @@ -1525,7 +1525,10 @@ static int ad1981_hp_master_sw_put(struc
> snd_hda_codec_write(codec, 0x05, 0,
> AC_VERB_SET_PIN_WIDGET_CONTROL,
> spec->cur_eapd ? PIN_OUT : 0);
> - /* toggle HP mute appropriately */
> + /* toggle Speaker/HP mute appropriately */
> + snd_hda_codec_amp_stereo(codec, 0x05, HDA_OUTPUT, 0,
> + HDA_AMP_MUTE,
> + spec->cur_eapd ? 0 : HDA_AMP_MUTE);
> snd_hda_codec_amp_stereo(codec, 0x06, HDA_OUTPUT, 0,
> HDA_AMP_MUTE,
> spec->cur_eapd ? 0 : HDA_AMP_MUTE);
> @@ -1724,6 +1727,7 @@ static struct snd_pci_quirk ad1981_cfg_t
> SND_PCI_QUIRK(0x1014, 0x0597, "Lenovo Z60", AD1981_THINKPAD),
> SND_PCI_QUIRK(0x1014, 0x05b7, "Lenovo Z60m", AD1981_THINKPAD),
> /* All HP models */
> + SND_PCI_QUIRK(0x103c, 0x30c9, "HP 2510p", AD1981_HP),
> SND_PCI_QUIRK_VENDOR(0x103c, "HP nx", AD1981_HP),
> SND_PCI_QUIRK(0x1179, 0x0001, "Toshiba U205", AD1981_TOSHIBA),
> /* Lenovo Thinkpad T60/X60/Z6xx */
>