Commit 08a1ed76 authored by Peter Ujfalusi's avatar Peter Ujfalusi Committed by Mark Brown

ASoC: twl6040: Prepare for core put_volsw/volsw_2r merger

Avoid using the mc->rreg to identify the 2r type of gain control.
Introduce a variable to track this.
This change is needed to avoid breakage with the upcoming volsw volsw_2r
merger.
Signed-off-by: default avatarPeter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: default avatarMark Brown <broonie@opensource.wolfsonmicro.com>
parent e49b6833
...@@ -746,7 +746,7 @@ static int twl6040_put_volsw(struct snd_kcontrol *kcontrol, ...@@ -746,7 +746,7 @@ static int twl6040_put_volsw(struct snd_kcontrol *kcontrol,
struct twl6040_output *out = NULL; struct twl6040_output *out = NULL;
struct soc_mixer_control *mc = struct soc_mixer_control *mc =
(struct soc_mixer_control *)kcontrol->private_value; (struct soc_mixer_control *)kcontrol->private_value;
int ret; int ret, type_2r;
/* For HS and HF we shadow the values and only actually write /* For HS and HF we shadow the values and only actually write
* them out when active in order to ensure the amplifier comes on * them out when active in order to ensure the amplifier comes on
...@@ -754,9 +754,11 @@ static int twl6040_put_volsw(struct snd_kcontrol *kcontrol, ...@@ -754,9 +754,11 @@ static int twl6040_put_volsw(struct snd_kcontrol *kcontrol,
switch (mc->reg) { switch (mc->reg) {
case TWL6040_REG_HSGAIN: case TWL6040_REG_HSGAIN:
out = &twl6040_priv->headset; out = &twl6040_priv->headset;
type_2r = 0;
break; break;
case TWL6040_REG_HFLGAIN: case TWL6040_REG_HFLGAIN:
out = &twl6040_priv->handsfree; out = &twl6040_priv->handsfree;
type_2r = 1;
break; break;
default: default:
return -EINVAL; return -EINVAL;
...@@ -768,7 +770,7 @@ static int twl6040_put_volsw(struct snd_kcontrol *kcontrol, ...@@ -768,7 +770,7 @@ static int twl6040_put_volsw(struct snd_kcontrol *kcontrol,
return 1; return 1;
/* call the appropriate handler depending on the rreg */ /* call the appropriate handler depending on the rreg */
if (mc->rreg) if (type_2r)
ret = snd_soc_put_volsw_2r(kcontrol, ucontrol); ret = snd_soc_put_volsw_2r(kcontrol, ucontrol);
else else
ret = snd_soc_put_volsw(kcontrol, ucontrol); ret = snd_soc_put_volsw(kcontrol, ucontrol);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment