Skip to content

Commit

Permalink
[ALSA] hda-codec - Fix LFE volume/switch
Browse files Browse the repository at this point in the history
HDA Codec driver
Fixed LFE volume/switch control.

Signed-off-by: Nicolas Graziano <nicolas.graziano@wanadoo.fr>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
  • Loading branch information
Nicolas Graziano authored and Jaroslav Kysela committed Aug 30, 2005
1 parent d827560 commit b9f5a89
Showing 1 changed file with 9 additions and 4 deletions.
13 changes: 9 additions & 4 deletions sound/pci/hda/hda_codec.c
Original file line number Diff line number Diff line change
Expand Up @@ -749,12 +749,14 @@ int snd_hda_mixer_amp_volume_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t
long *valp = ucontrol->value.integer.value;
int change = 0;

if (chs & 1)
if (chs & 1) {
change = snd_hda_codec_amp_update(codec, nid, 0, dir, idx,
0x7f, *valp);
valp++;
}
if (chs & 2)
change |= snd_hda_codec_amp_update(codec, nid, 1, dir, idx,
0x7f, valp[1]);
0x7f, *valp);
return change;
}

Expand Down Expand Up @@ -796,12 +798,15 @@ int snd_hda_mixer_amp_switch_put(snd_kcontrol_t *kcontrol, snd_ctl_elem_value_t
long *valp = ucontrol->value.integer.value;
int change = 0;

if (chs & 1)
if (chs & 1) {
change = snd_hda_codec_amp_update(codec, nid, 0, dir, idx,
0x80, *valp ? 0 : 0x80);
valp++;
}
if (chs & 2)
change |= snd_hda_codec_amp_update(codec, nid, 1, dir, idx,
0x80, valp[1] ? 0 : 0x80);
0x80, *valp ? 0 : 0x80);

return change;
}

Expand Down

0 comments on commit b9f5a89

Please sign in to comment.