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

Wu Fengguang
2009-08-16T11:04:11Z

On Sun, Aug 16, 2009 at 05:24:19PM +0800, Takashi Iwai wrote:
> 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.

Right, what I care is the unmute part, which fixed the silence bug :)

Thanks,
Fengguang

> > ---
> > 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 */
> >