mirror of
https://github.com/torvalds/linux.git
synced 2024-12-13 22:53:20 +00:00
ASoC: twl6040: Simply call snd_soc_put_volsw form the custom code
The ASoC core now have one callback function, which can handle single, and double register mixer controls. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
parent
974815ba4f
commit
db382da5ff
@ -746,7 +746,7 @@ static int twl6040_put_volsw(struct snd_kcontrol *kcontrol,
|
||||
struct twl6040_output *out = NULL;
|
||||
struct soc_mixer_control *mc =
|
||||
(struct soc_mixer_control *)kcontrol->private_value;
|
||||
int ret, type_2r;
|
||||
int ret;
|
||||
|
||||
/* For HS and HF we shadow the values and only actually write
|
||||
* them out when active in order to ensure the amplifier comes on
|
||||
@ -754,11 +754,9 @@ static int twl6040_put_volsw(struct snd_kcontrol *kcontrol,
|
||||
switch (mc->reg) {
|
||||
case TWL6040_REG_HSGAIN:
|
||||
out = &twl6040_priv->headset;
|
||||
type_2r = 0;
|
||||
break;
|
||||
case TWL6040_REG_HFLGAIN:
|
||||
out = &twl6040_priv->handsfree;
|
||||
type_2r = 1;
|
||||
break;
|
||||
default:
|
||||
return -EINVAL;
|
||||
@ -769,12 +767,7 @@ static int twl6040_put_volsw(struct snd_kcontrol *kcontrol,
|
||||
if (!out->active)
|
||||
return 1;
|
||||
|
||||
/* call the appropriate handler depending on the rreg */
|
||||
if (type_2r)
|
||||
ret = snd_soc_put_volsw_2r(kcontrol, ucontrol);
|
||||
else
|
||||
ret = snd_soc_put_volsw(kcontrol, ucontrol);
|
||||
|
||||
ret = snd_soc_put_volsw(kcontrol, ucontrol);
|
||||
if (ret < 0)
|
||||
return ret;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user