ASoC: twl4030: Remove reset registers functionality
authorPeter Ujfalusi <peter.ujfalusi@ti.com>
Fri, 3 Jan 2014 13:27:51 +0000 (15:27 +0200)
committerMark Brown <broonie@linaro.org>
Wed, 8 Jan 2014 12:48:53 +0000 (12:48 +0000)
The register states now tracked by the regmap implementation in the core which
makes the reset registers functionality 'redundant' since we know the state
of the registers now all the time.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
include/linux/i2c/twl.h
sound/soc/codecs/twl4030.c

index 2937a9472b941859834923c6f44e694e5b79b766..ade1c06d4cebed9c30b47ea98c69fe51df89508c 100644 (file)
@@ -670,7 +670,6 @@ struct twl4030_codec_data {
        unsigned int digimic_delay; /* in ms */
        unsigned int ramp_delay_value;
        unsigned int offset_cncl_path;
-       unsigned int reset_registers:1;
        unsigned int hs_extmute:1;
        int hs_extmute_gpio;
 };
index 7b732ab70d2c6b27c10204b3bba41e792743d330..ab2f22299db2f09003909aa4c3fd14fc7de082e7 100644 (file)
@@ -268,17 +268,6 @@ static void twl4030_codec_enable(struct snd_soc_codec *codec, int enable)
        udelay(10);
 }
 
-static inline void twl4030_reset_registers(struct snd_soc_codec *codec)
-{
-       int i;
-
-       /* set all audio section registers to reasonable defaults */
-       for (i = TWL4030_REG_OPTION; i <= TWL4030_REG_MISC_SET_2; i++)
-               if (i != TWL4030_REG_APLL_CTL)
-                       twl4030_write(codec, i, twl4030_reg[i]);
-
-}
-
 static void twl4030_setup_pdata_of(struct twl4030_codec_data *pdata,
                                   struct device_node *node)
 {
@@ -359,10 +348,6 @@ static void twl4030_init_chip(struct snd_soc_codec *codec)
                }
        }
 
-       /* Reset registers, if no setup data or if instructed to do so */
-       if (!pdata || (pdata && pdata->reset_registers))
-               twl4030_reset_registers(codec);
-
        /* Refresh APLL_CTL register from HW */
        twl_i2c_read_u8(TWL4030_MODULE_AUDIO_VOICE, &byte,
                            TWL4030_REG_APLL_CTL);
@@ -2293,8 +2278,6 @@ static int twl4030_soc_remove(struct snd_soc_codec *codec)
        struct twl4030_priv *twl4030 = snd_soc_codec_get_drvdata(codec);
        struct twl4030_codec_data *pdata = twl4030->pdata;
 
-       /* Reset registers to their chip default before leaving */
-       twl4030_reset_registers(codec);
        twl4030_set_bias_level(codec, SND_SOC_BIAS_OFF);
 
        if (pdata && pdata->hs_extmute && gpio_is_valid(pdata->hs_extmute_gpio))