Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 092eba93 authored by Xiubo Li's avatar Xiubo Li Committed by Mark Brown
Browse files

ASoC: io: New signature for snd_soc_codec_set_cache_io()



Now that all users have been converted to regmap and the config.reg_bits
and config.val_bits can be setted by each user through regmap core API.
So these two params are redundant here.

Since the only control type that left is SND_SOC_REGMAP, so remove it. Drop
the control params and add struct regmap *regmap to simplify the code.

Signed-off-by: default avatarXiubo Li <Li.Xiubo@freescale.com>
Signed-off-by: default avatarMark Brown <broonie@linaro.org>
parent 5d6be5aa
Loading
Loading
Loading
Loading
+1 −6
Original line number Diff line number Diff line
@@ -354,10 +354,6 @@ typedef int (*hw_write_t)(void *,const char* ,int);

extern struct snd_ac97_bus_ops *soc_ac97_ops;

enum snd_soc_control_type {
	SND_SOC_REGMAP,
};

enum snd_soc_pcm_subclass {
	SND_SOC_PCM_CLASS_PCM	= 0,
	SND_SOC_PCM_CLASS_BE	= 1,
@@ -404,8 +400,7 @@ int snd_soc_codec_readable_register(struct snd_soc_codec *codec,
int snd_soc_codec_writable_register(struct snd_soc_codec *codec,
				    unsigned int reg);
int snd_soc_codec_set_cache_io(struct snd_soc_codec *codec,
			       int addr_bits, int data_bits,
			       enum snd_soc_control_type control);
			       struct regmap *regmap);
int snd_soc_cache_sync(struct snd_soc_codec *codec);
int snd_soc_cache_init(struct snd_soc_codec *codec);
int snd_soc_cache_exit(struct snd_soc_codec *codec);
+1 −2
Original line number Diff line number Diff line
@@ -1327,8 +1327,7 @@ static int pm860x_probe(struct snd_soc_codec *codec)

	pm860x->codec = codec;

	codec->control_data = pm860x->regmap;
	ret = snd_soc_codec_set_cache_io(codec, 0, 0, SND_SOC_REGMAP);
	ret = snd_soc_codec_set_cache_io(codec, pm860x->regmap);
	if (ret)
		return ret;

+1 −2
Original line number Diff line number Diff line
@@ -138,9 +138,8 @@ static int cq93vc_probe(struct snd_soc_codec *codec)
	struct davinci_vc *davinci_vc = codec->dev->platform_data;

	davinci_vc->cq93vc.codec = codec;
	codec->control_data = davinci_vc->regmap;

	snd_soc_codec_set_cache_io(codec, 32, 32, SND_SOC_REGMAP);
	snd_soc_codec_set_cache_io(codec, davinci_vc->regmap);

	/* Off, with power on */
	cq93vc_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
+2 −2
Original line number Diff line number Diff line
@@ -614,8 +614,8 @@ static int mc13783_probe(struct snd_soc_codec *codec)
	struct mc13783_priv *priv = snd_soc_codec_get_drvdata(codec);
	int ret;

	codec->control_data = dev_get_regmap(codec->dev->parent, NULL);
	ret = snd_soc_codec_set_cache_io(codec, 8, 24, SND_SOC_REGMAP);
	ret = snd_soc_codec_set_cache_io(codec,
			dev_get_regmap(codec->dev->parent, NULL));
	if (ret != 0) {
		dev_err(codec->dev, "Failed to set cache I/O: %d\n", ret);
		return ret;
+4 −2
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@
#include <linux/slab.h>
#include <sound/pcm.h>
#include <sound/pcm_params.h>
#include <linux/regmap.h>
#include <sound/soc.h>
#include <sound/initval.h>

@@ -209,8 +210,9 @@ out:

static int si476x_codec_probe(struct snd_soc_codec *codec)
{
	codec->control_data = dev_get_regmap(codec->dev->parent, NULL);
	return snd_soc_codec_set_cache_io(codec, 0, 0, SND_SOC_REGMAP);
	struct regmap *regmap = dev_get_regmap(codec->dev->parent, NULL);

	return snd_soc_codec_set_cache_io(codec, regmap);
}

static struct snd_soc_dai_ops si476x_dai_ops = {
Loading