ASoC: dapm: Fix value setting for _ENUM_DOUBLE MUX's second channel
commit 071133a209354f39d4e5785d5a6a390e03241841 upstream.
The value for the second channel in _ENUM_DOUBLE (double channel) MUXs
is not correctly updated, due to using the wrong bit shift.
Use the correct bit shift, so both channels toggle together.
Fixes: 3727b49684
(ASoC: dapm: Consolidate MUXs and value MUXs)
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Reviewed-by: Charles Keepax <ckeepax@opensource.wolfsonmicro.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
41201d18e2
commit
de0b70569c
1 changed files with 1 additions and 1 deletions
|
@ -3169,7 +3169,7 @@ int snd_soc_dapm_put_enum_double(struct snd_kcontrol *kcontrol,
|
|||
if (e->shift_l != e->shift_r) {
|
||||
if (item[1] > e->items)
|
||||
return -EINVAL;
|
||||
val |= snd_soc_enum_item_to_val(e, item[1]) << e->shift_l;
|
||||
val |= snd_soc_enum_item_to_val(e, item[1]) << e->shift_r;
|
||||
mask |= e->mask << e->shift_r;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue