|
@@ -995,15 +995,7 @@ static int ad1986a_hp_master_sw_put(struct snd_kcontrol *kcontrol,
|
|
|
struct snd_ctl_elem_value *ucontrol)
|
|
|
{
|
|
|
struct hda_codec *codec = snd_kcontrol_chip(kcontrol);
|
|
|
- long *valp = ucontrol->value.integer.value;
|
|
|
- int change;
|
|
|
-
|
|
|
- change = snd_hda_codec_amp_update(codec, 0x1a, 0, HDA_OUTPUT, 0,
|
|
|
- HDA_AMP_MUTE,
|
|
|
- valp[0] ? 0 : HDA_AMP_MUTE);
|
|
|
- change |= snd_hda_codec_amp_update(codec, 0x1a, 1, HDA_OUTPUT, 0,
|
|
|
- HDA_AMP_MUTE,
|
|
|
- valp[1] ? 0 : HDA_AMP_MUTE);
|
|
|
+ int change = snd_hda_mixer_amp_switch_put(kcontrol, ucontrol);
|
|
|
if (change)
|
|
|
ad1986a_update_hp(codec);
|
|
|
return change;
|