]> Git Repo - linux.git/commitdiff
ASoC: cs4270: replace codec to component
authorKuninori Morimoto <[email protected]>
Mon, 29 Jan 2018 03:51:09 +0000 (03:51 +0000)
committerMark Brown <[email protected]>
Mon, 12 Feb 2018 09:46:38 +0000 (09:46 +0000)
Now we can replace Codec to Component. Let's do it.

Note:
xxx_codec_xxx() -> xxx_component_xxx()
.idle_bias_off = 0 -> .idle_bias_on = 1
.ignore_pmdown_time = 0 -> .use_pmdown_time = 1
- -> .endianness = 1
- -> .non_legacy_dai_naming = 1

Signed-off-by: Kuninori Morimoto <[email protected]>
Signed-off-by: Mark Brown <[email protected]>
sound/soc/codecs/cs4270.c

index 84f86745c30e93cd746935113f3c0aa08fd4021e..2a7a4168c072a0112939c2a8cd2440bf1fffa481 100644 (file)
@@ -254,8 +254,8 @@ static bool cs4270_reg_is_volatile(struct device *dev, unsigned int reg)
 static int cs4270_set_dai_sysclk(struct snd_soc_dai *codec_dai,
                                 int clk_id, unsigned int freq, int dir)
 {
-       struct snd_soc_codec *codec = codec_dai->codec;
-       struct cs4270_private *cs4270 = snd_soc_codec_get_drvdata(codec);
+       struct snd_soc_component *component = codec_dai->component;
+       struct cs4270_private *cs4270 = snd_soc_component_get_drvdata(component);
 
        cs4270->mclk = freq;
        return 0;
@@ -277,8 +277,8 @@ static int cs4270_set_dai_sysclk(struct snd_soc_dai *codec_dai,
 static int cs4270_set_dai_fmt(struct snd_soc_dai *codec_dai,
                              unsigned int format)
 {
-       struct snd_soc_codec *codec = codec_dai->codec;
-       struct cs4270_private *cs4270 = snd_soc_codec_get_drvdata(codec);
+       struct snd_soc_component *component = codec_dai->component;
+       struct cs4270_private *cs4270 = snd_soc_component_get_drvdata(component);
 
        /* set DAI format */
        switch (format & SND_SOC_DAIFMT_FORMAT_MASK) {
@@ -287,7 +287,7 @@ static int cs4270_set_dai_fmt(struct snd_soc_dai *codec_dai,
                cs4270->mode = format & SND_SOC_DAIFMT_FORMAT_MASK;
                break;
        default:
-               dev_err(codec->dev, "invalid dai format\n");
+               dev_err(component->dev, "invalid dai format\n");
                return -EINVAL;
        }
 
@@ -301,7 +301,7 @@ static int cs4270_set_dai_fmt(struct snd_soc_dai *codec_dai,
                break;
        default:
                /* all other modes are unsupported by the hardware */
-               dev_err(codec->dev, "Unknown master/slave configuration\n");
+               dev_err(component->dev, "Unknown master/slave configuration\n");
                return -EINVAL;
        }
 
@@ -326,8 +326,8 @@ static int cs4270_hw_params(struct snd_pcm_substream *substream,
                            struct snd_pcm_hw_params *params,
                            struct snd_soc_dai *dai)
 {
-       struct snd_soc_codec *codec = dai->codec;
-       struct cs4270_private *cs4270 = snd_soc_codec_get_drvdata(codec);
+       struct snd_soc_component *component = dai->component;
+       struct cs4270_private *cs4270 = snd_soc_component_get_drvdata(component);
        int ret;
        unsigned int i;
        unsigned int rate;
@@ -346,13 +346,13 @@ static int cs4270_hw_params(struct snd_pcm_substream *substream,
 
        if (i == NUM_MCLK_RATIOS) {
                /* We did not find a matching ratio */
-               dev_err(codec->dev, "could not find matching ratio\n");
+               dev_err(component->dev, "could not find matching ratio\n");
                return -EINVAL;
        }
 
        /* Set the sample rate */
 
-       reg = snd_soc_read(codec, CS4270_MODE);
+       reg = snd_soc_component_read32(component, CS4270_MODE);
        reg &= ~(CS4270_MODE_SPEED_MASK | CS4270_MODE_DIV_MASK);
        reg |= cs4270_mode_ratios[i].mclk;
 
@@ -361,15 +361,15 @@ static int cs4270_hw_params(struct snd_pcm_substream *substream,
        else
                reg |= cs4270_mode_ratios[i].speed_mode;
 
-       ret = snd_soc_write(codec, CS4270_MODE, reg);
+       ret = snd_soc_component_write(component, CS4270_MODE, reg);
        if (ret < 0) {
-               dev_err(codec->dev, "i2c write failed\n");
+               dev_err(component->dev, "i2c write failed\n");
                return ret;
        }
 
        /* Set the DAI format */
 
-       reg = snd_soc_read(codec, CS4270_FORMAT);
+       reg = snd_soc_component_read32(component, CS4270_FORMAT);
        reg &= ~(CS4270_FORMAT_DAC_MASK | CS4270_FORMAT_ADC_MASK);
 
        switch (cs4270->mode) {
@@ -380,13 +380,13 @@ static int cs4270_hw_params(struct snd_pcm_substream *substream,
                reg |= CS4270_FORMAT_DAC_LJ | CS4270_FORMAT_ADC_LJ;
                break;
        default:
-               dev_err(codec->dev, "unknown dai format\n");
+               dev_err(component->dev, "unknown dai format\n");
                return -EINVAL;
        }
 
-       ret = snd_soc_write(codec, CS4270_FORMAT, reg);
+       ret = snd_soc_component_write(component, CS4270_FORMAT, reg);
        if (ret < 0) {
-               dev_err(codec->dev, "i2c write failed\n");
+               dev_err(component->dev, "i2c write failed\n");
                return ret;
        }
 
@@ -405,11 +405,11 @@ static int cs4270_hw_params(struct snd_pcm_substream *substream,
  */
 static int cs4270_dai_mute(struct snd_soc_dai *dai, int mute)
 {
-       struct snd_soc_codec *codec = dai->codec;
-       struct cs4270_private *cs4270 = snd_soc_codec_get_drvdata(codec);
+       struct snd_soc_component *component = dai->component;
+       struct cs4270_private *cs4270 = snd_soc_component_get_drvdata(component);
        int reg6;
 
-       reg6 = snd_soc_read(codec, CS4270_MUTE);
+       reg6 = snd_soc_component_read32(component, CS4270_MUTE);
 
        if (mute)
                reg6 |= CS4270_MUTE_DAC_A | CS4270_MUTE_DAC_B;
@@ -418,7 +418,7 @@ static int cs4270_dai_mute(struct snd_soc_dai *dai, int mute)
                reg6 |= cs4270->manual_mute;
        }
 
-       return snd_soc_write(codec, CS4270_MUTE, reg6);
+       return snd_soc_component_write(component, CS4270_MUTE, reg6);
 }
 
 /**
@@ -438,8 +438,8 @@ static int cs4270_dai_mute(struct snd_soc_dai *dai, int mute)
 static int cs4270_soc_put_mute(struct snd_kcontrol *kcontrol,
                                struct snd_ctl_elem_value *ucontrol)
 {
-       struct snd_soc_codec *codec = snd_soc_kcontrol_codec(kcontrol);
-       struct cs4270_private *cs4270 = snd_soc_codec_get_drvdata(codec);
+       struct snd_soc_component *component = snd_soc_kcontrol_component(kcontrol);
+       struct cs4270_private *cs4270 = snd_soc_component_get_drvdata(component);
        int left = !ucontrol->value.integer.value[0];
        int right = !ucontrol->value.integer.value[1];
 
@@ -501,9 +501,9 @@ static struct snd_soc_dai_driver cs4270_dai = {
  * This function is called when ASoC has all the pieces it needs to
  * instantiate a sound driver.
  */
-static int cs4270_probe(struct snd_soc_codec *codec)
+static int cs4270_probe(struct snd_soc_component *component)
 {
-       struct cs4270_private *cs4270 = snd_soc_codec_get_drvdata(codec);
+       struct cs4270_private *cs4270 = snd_soc_component_get_drvdata(component);
        int ret;
 
        /* Disable auto-mute.  This feature appears to be buggy.  In some
@@ -511,9 +511,9 @@ static int cs4270_probe(struct snd_soc_codec *codec)
         * this feature disabled by default.  An application (e.g. alsactl) can
         * re-enabled it by using the controls.
         */
-       ret = snd_soc_update_bits(codec, CS4270_MUTE, CS4270_MUTE_AUTO, 0);
+       ret = snd_soc_component_update_bits(component, CS4270_MUTE, CS4270_MUTE_AUTO, 0);
        if (ret < 0) {
-               dev_err(codec->dev, "i2c write failed\n");
+               dev_err(component->dev, "i2c write failed\n");
                return ret;
        }
 
@@ -522,10 +522,10 @@ static int cs4270_probe(struct snd_soc_codec *codec)
         * playback has started.  An application (e.g. alsactl) can
         * re-enabled it by using the controls.
         */
-       ret = snd_soc_update_bits(codec, CS4270_TRANS,
+       ret = snd_soc_component_update_bits(component, CS4270_TRANS,
                CS4270_TRANS_SOFT | CS4270_TRANS_ZERO, 0);
        if (ret < 0) {
-               dev_err(codec->dev, "i2c write failed\n");
+               dev_err(component->dev, "i2c write failed\n");
                return ret;
        }
 
@@ -541,13 +541,11 @@ static int cs4270_probe(struct snd_soc_codec *codec)
  *
  * This function is the counterpart to cs4270_probe().
  */
-static int cs4270_remove(struct snd_soc_codec *codec)
+static void cs4270_remove(struct snd_soc_component *component)
 {
-       struct cs4270_private *cs4270 = snd_soc_codec_get_drvdata(codec);
+       struct cs4270_private *cs4270 = snd_soc_component_get_drvdata(component);
 
        regulator_bulk_disable(ARRAY_SIZE(cs4270->supplies), cs4270->supplies);
-
-       return 0;
 };
 
 #ifdef CONFIG_PM
@@ -561,16 +559,16 @@ static int cs4270_remove(struct snd_soc_codec *codec)
  * and all registers are written back to the hardware when resuming.
  */
 
-static int cs4270_soc_suspend(struct snd_soc_codec *codec)
+static int cs4270_soc_suspend(struct snd_soc_component *component)
 {
-       struct cs4270_private *cs4270 = snd_soc_codec_get_drvdata(codec);
+       struct cs4270_private *cs4270 = snd_soc_component_get_drvdata(component);
        int reg, ret;
 
-       reg = snd_soc_read(codec, CS4270_PWRCTL) | CS4270_PWRCTL_PDN_ALL;
+       reg = snd_soc_component_read32(component, CS4270_PWRCTL) | CS4270_PWRCTL_PDN_ALL;
        if (reg < 0)
                return reg;
 
-       ret = snd_soc_write(codec, CS4270_PWRCTL, reg);
+       ret = snd_soc_component_write(component, CS4270_PWRCTL, reg);
        if (ret < 0)
                return ret;
 
@@ -580,9 +578,9 @@ static int cs4270_soc_suspend(struct snd_soc_codec *codec)
        return 0;
 }
 
-static int cs4270_soc_resume(struct snd_soc_codec *codec)
+static int cs4270_soc_resume(struct snd_soc_component *component)
 {
-       struct cs4270_private *cs4270 = snd_soc_codec_get_drvdata(codec);
+       struct cs4270_private *cs4270 = snd_soc_component_get_drvdata(component);
        int reg, ret;
 
        ret = regulator_bulk_enable(ARRAY_SIZE(cs4270->supplies),
@@ -598,10 +596,10 @@ static int cs4270_soc_resume(struct snd_soc_codec *codec)
        regcache_sync(cs4270->regmap);
 
        /* ... then disable the power-down bits */
-       reg = snd_soc_read(codec, CS4270_PWRCTL);
+       reg = snd_soc_component_read32(component, CS4270_PWRCTL);
        reg &= ~CS4270_PWRCTL_PDN_ALL;
 
-       return snd_soc_write(codec, CS4270_PWRCTL, reg);
+       return snd_soc_component_write(component, CS4270_PWRCTL, reg);
 }
 #else
 #define cs4270_soc_suspend     NULL
@@ -611,20 +609,21 @@ static int cs4270_soc_resume(struct snd_soc_codec *codec)
 /*
  * ASoC codec driver structure
  */
-static const struct snd_soc_codec_driver soc_codec_device_cs4270 = {
-       .probe =                cs4270_probe,
-       .remove =               cs4270_remove,
-       .suspend =              cs4270_soc_suspend,
-       .resume =               cs4270_soc_resume,
-
-       .component_driver = {
-               .controls =             cs4270_snd_controls,
-               .num_controls =         ARRAY_SIZE(cs4270_snd_controls),
-               .dapm_widgets =         cs4270_dapm_widgets,
-               .num_dapm_widgets =     ARRAY_SIZE(cs4270_dapm_widgets),
-               .dapm_routes =          cs4270_dapm_routes,
-               .num_dapm_routes =      ARRAY_SIZE(cs4270_dapm_routes),
-       },
+static const struct snd_soc_component_driver soc_component_device_cs4270 = {
+       .probe                  = cs4270_probe,
+       .remove                 = cs4270_remove,
+       .suspend                = cs4270_soc_suspend,
+       .resume                 = cs4270_soc_resume,
+       .controls               = cs4270_snd_controls,
+       .num_controls           = ARRAY_SIZE(cs4270_snd_controls),
+       .dapm_widgets           = cs4270_dapm_widgets,
+       .num_dapm_widgets       = ARRAY_SIZE(cs4270_dapm_widgets),
+       .dapm_routes            = cs4270_dapm_routes,
+       .num_dapm_routes        = ARRAY_SIZE(cs4270_dapm_routes),
+       .idle_bias_on           = 1,
+       .use_pmdown_time        = 1,
+       .endianness             = 1,
+       .non_legacy_dai_naming  = 1,
 };
 
 /*
@@ -718,23 +717,11 @@ static int cs4270_i2c_probe(struct i2c_client *i2c_client,
 
        i2c_set_clientdata(i2c_client, cs4270);
 
-       ret = snd_soc_register_codec(&i2c_client->dev,
-                       &soc_codec_device_cs4270, &cs4270_dai, 1);
+       ret = devm_snd_soc_register_component(&i2c_client->dev,
+                       &soc_component_device_cs4270, &cs4270_dai, 1);
        return ret;
 }
 
-/**
- * cs4270_i2c_remove - remove an I2C device
- * @i2c_client: the I2C client object
- *
- * This function is the counterpart to cs4270_i2c_probe().
- */
-static int cs4270_i2c_remove(struct i2c_client *i2c_client)
-{
-       snd_soc_unregister_codec(&i2c_client->dev);
-       return 0;
-}
-
 /*
  * cs4270_id - I2C device IDs supported by this driver
  */
@@ -757,7 +744,6 @@ static struct i2c_driver cs4270_i2c_driver = {
        },
        .id_table = cs4270_id,
        .probe = cs4270_i2c_probe,
-       .remove = cs4270_i2c_remove,
 };
 
 module_i2c_driver(cs4270_i2c_driver);
This page took 0.061836 seconds and 4 git commands to generate.