diff options
author | Alexander Stein <alexander.stein@systec-electronic.com> | 2015-04-16 08:51:56 -0400 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2015-04-27 10:42:20 -0400 |
commit | d2b7c2aaf7b565532c7d9937519b199fbca4a779 (patch) | |
tree | bf68f8043e71116058fdff0519380ab9865af08a | |
parent | b787f68c36d49bb1d9236f403813641efa74a031 (diff) |
ASoC: sgtl5000: Use specific variable for lo_vag
This is a preparation for calculating lo_vol which needs both vag
and lo_vag.
Signed-off-by: Alexander Stein <alexander.stein@systec-electronic.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r-- | sound/soc/codecs/sgtl5000.c | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/sound/soc/codecs/sgtl5000.c b/sound/soc/codecs/sgtl5000.c index 3593a1496056..bab2b5e5b312 100644 --- a/sound/soc/codecs/sgtl5000.c +++ b/sound/soc/codecs/sgtl5000.c | |||
@@ -1111,6 +1111,7 @@ static int sgtl5000_set_power_regs(struct snd_soc_codec *codec) | |||
1111 | u16 ana_pwr; | 1111 | u16 ana_pwr; |
1112 | u16 lreg_ctrl; | 1112 | u16 lreg_ctrl; |
1113 | int vag; | 1113 | int vag; |
1114 | int lo_vag; | ||
1114 | struct sgtl5000_priv *sgtl5000 = snd_soc_codec_get_drvdata(codec); | 1115 | struct sgtl5000_priv *sgtl5000 = snd_soc_codec_get_drvdata(codec); |
1115 | 1116 | ||
1116 | vdda = regulator_get_voltage(sgtl5000->supplies[VDDA].consumer); | 1117 | vdda = regulator_get_voltage(sgtl5000->supplies[VDDA].consumer); |
@@ -1198,20 +1199,20 @@ static int sgtl5000_set_power_regs(struct snd_soc_codec *codec) | |||
1198 | SGTL5000_ANA_GND_MASK, vag << SGTL5000_ANA_GND_SHIFT); | 1199 | SGTL5000_ANA_GND_MASK, vag << SGTL5000_ANA_GND_SHIFT); |
1199 | 1200 | ||
1200 | /* set line out VAG to vddio / 2, in range (0.8v, 1.675v) */ | 1201 | /* set line out VAG to vddio / 2, in range (0.8v, 1.675v) */ |
1201 | vag = vddio / 2; | 1202 | lo_vag = vddio / 2; |
1202 | if (vag <= SGTL5000_LINE_OUT_GND_BASE) | 1203 | if (lo_vag <= SGTL5000_LINE_OUT_GND_BASE) |
1203 | vag = 0; | 1204 | lo_vag = 0; |
1204 | else if (vag >= SGTL5000_LINE_OUT_GND_BASE + | 1205 | else if (lo_vag >= SGTL5000_LINE_OUT_GND_BASE + |
1205 | SGTL5000_LINE_OUT_GND_STP * SGTL5000_LINE_OUT_GND_MAX) | 1206 | SGTL5000_LINE_OUT_GND_STP * SGTL5000_LINE_OUT_GND_MAX) |
1206 | vag = SGTL5000_LINE_OUT_GND_MAX; | 1207 | lo_vag = SGTL5000_LINE_OUT_GND_MAX; |
1207 | else | 1208 | else |
1208 | vag = (vag - SGTL5000_LINE_OUT_GND_BASE) / | 1209 | lo_vag = (lo_vag - SGTL5000_LINE_OUT_GND_BASE) / |
1209 | SGTL5000_LINE_OUT_GND_STP; | 1210 | SGTL5000_LINE_OUT_GND_STP; |
1210 | 1211 | ||
1211 | snd_soc_update_bits(codec, SGTL5000_CHIP_LINE_OUT_CTRL, | 1212 | snd_soc_update_bits(codec, SGTL5000_CHIP_LINE_OUT_CTRL, |
1212 | SGTL5000_LINE_OUT_CURRENT_MASK | | 1213 | SGTL5000_LINE_OUT_CURRENT_MASK | |
1213 | SGTL5000_LINE_OUT_GND_MASK, | 1214 | SGTL5000_LINE_OUT_GND_MASK, |
1214 | vag << SGTL5000_LINE_OUT_GND_SHIFT | | 1215 | lo_vag << SGTL5000_LINE_OUT_GND_SHIFT | |
1215 | SGTL5000_LINE_OUT_CURRENT_360u << | 1216 | SGTL5000_LINE_OUT_CURRENT_360u << |
1216 | SGTL5000_LINE_OUT_CURRENT_SHIFT); | 1217 | SGTL5000_LINE_OUT_CURRENT_SHIFT); |
1217 | 1218 | ||