[alsa-devel] [PATCH] ASoC: io: Remove hw_read() operation
Lars-Peter Clausen
lars at metafoo.de
Tue Mar 4 10:20:16 CET 2014
On 03/04/2014 10:10 AM, Mark Brown wrote:
> From: Mark Brown <broonie at linaro.org>
>
> We now no longer have any users of hw_read() in the kernel so remove the
> code in order to prevent any new users being added. Users should be using
> regmap.
>
> Signed-off-by: Mark Brown <broonie at linaro.org>
> ---
> include/sound/soc.h | 1 -
> sound/soc/soc-io.c | 13 -------------
> 2 files changed, 14 deletions(-)
>
> diff --git a/include/sound/soc.h b/include/sound/soc.h
> index 56c4c71..dc36331 100644
> --- a/include/sound/soc.h
> +++ b/include/sound/soc.h
> @@ -706,7 +706,6 @@ struct snd_soc_codec {
> /* codec IO */
> void *control_data; /* codec control (i2c/3wire) data */
> hw_write_t hw_write;
> - unsigned int (*hw_read)(struct snd_soc_codec *, unsigned int);
This part is OK.
> unsigned int (*read)(struct snd_soc_codec *, unsigned int);
> int (*write)(struct snd_soc_codec *, unsigned int, unsigned int);
> void *reg_cache;
> diff --git a/sound/soc/soc-io.c b/sound/soc/soc-io.c
> index c3b6a0a..3c1de9c 100644
> --- a/sound/soc/soc-io.c
> +++ b/sound/soc/soc-io.c
> @@ -26,18 +26,6 @@ static int hw_write(struct snd_soc_codec *codec, unsigned int reg,
> return regmap_write(codec->control_data, reg, value);
> }
>
> -static unsigned int hw_read(struct snd_soc_codec *codec, unsigned int reg)
> -{
> - int ret;
> - unsigned int val;
> -
> - ret = regmap_read(codec->control_data, reg, &val);
> - if (ret == 0)
> - return val;
> - else
> - return -1;
> -}
> -
> /**
> * snd_soc_codec_set_cache_io: Set up standard I/O functions.
> *
> @@ -64,7 +52,6 @@ int snd_soc_codec_set_cache_io(struct snd_soc_codec *codec,
> int ret;
>
> codec->write = hw_write;
> - codec->read = hw_read;
But this part will break snd_soc_read() and with it basically every driver
that has any controls or DAPM widgets.
I do have a set of patches that moves IO to the component level that will
clean this all up quite a bit. I'm just waiting for Xiubo Li
snd_soc_codec_set_cache_io() cleanup to be merged first, since it will make
things a bit simpler.
>
> switch (control) {
> case SND_SOC_REGMAP:
>
More information about the Alsa-devel
mailing list