summaryrefslogtreecommitdiffstats
path: root/sound/soc
diff options
context:
space:
mode:
authorPeter Ujfalusi <peter.ujfalusi@ti.com>2014-01-03 15:27:55 +0200
committerMark Brown <broonie@linaro.org>2014-01-08 12:48:53 +0000
commita450aa6f507542d87ad237cb402b8b6e56329924 (patch)
tree49ffbfe7a43318ed3a774b8a49ede40c0a77a235 /sound/soc
parent7ded5fe020e670befeab6777e7b8bc4bec272a3f (diff)
downloadlinux-stable-a450aa6f507542d87ad237cb402b8b6e56329924.tar.gz
linux-stable-a450aa6f507542d87ad237cb402b8b6e56329924.tar.bz2
linux-stable-a450aa6f507542d87ad237cb402b8b6e56329924.zip
ASoC: twl4030: Move the ctl cache update local to twl4030_write() function
There's no other users of this functionality, the code can be moved inside of twl4030_write. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'sound/soc')
-rw-r--r--sound/soc/codecs/twl4030.c36
1 files changed, 16 insertions, 20 deletions
diff --git a/sound/soc/codecs/twl4030.c b/sound/soc/codecs/twl4030.c
index 7a5b91e70f98..c3c15f891270 100644
--- a/sound/soc/codecs/twl4030.c
+++ b/sound/soc/codecs/twl4030.c
@@ -86,25 +86,6 @@ static void tw4030_init_ctl_cache(struct twl4030_priv *twl4030)
}
}
-static void twl4030_update_ctl_cache(struct snd_soc_codec *codec,
- unsigned int reg, unsigned int value)
-{
- struct twl4030_priv *twl4030 = snd_soc_codec_get_drvdata(codec);
-
- switch (reg) {
- case TWL4030_REG_EAR_CTL:
- case TWL4030_REG_PREDL_CTL:
- case TWL4030_REG_PREDR_CTL:
- case TWL4030_REG_PRECKL_CTL:
- case TWL4030_REG_PRECKR_CTL:
- case TWL4030_REG_HS_GAIN_SET:
- twl4030->ctl_cache[reg - TWL4030_REG_EAR_CTL] = value;
- break;
- default:
- break;
- }
-}
-
static unsigned int twl4030_read(struct snd_soc_codec *codec, unsigned int reg)
{
struct twl4030_priv *twl4030 = snd_soc_codec_get_drvdata(codec);
@@ -174,7 +155,22 @@ static bool twl4030_can_write_to_chip(struct snd_soc_codec *codec,
static int twl4030_write(struct snd_soc_codec *codec, unsigned int reg,
unsigned int value)
{
- twl4030_update_ctl_cache(codec, reg, value);
+ struct twl4030_priv *twl4030 = snd_soc_codec_get_drvdata(codec);
+
+ /* Update the ctl cache */
+ switch (reg) {
+ case TWL4030_REG_EAR_CTL:
+ case TWL4030_REG_PREDL_CTL:
+ case TWL4030_REG_PREDR_CTL:
+ case TWL4030_REG_PRECKL_CTL:
+ case TWL4030_REG_PRECKR_CTL:
+ case TWL4030_REG_HS_GAIN_SET:
+ twl4030->ctl_cache[reg - TWL4030_REG_EAR_CTL] = value;
+ break;
+ default:
+ break;
+ }
+
if (twl4030_can_write_to_chip(codec, reg))
return twl_i2c_write_u8(TWL4030_MODULE_AUDIO_VOICE, value, reg);