ASoC: io: Remove support for ASoC cache in conjunction with regmap
Since all regmap CODECs should be (and are) using the more advance regmap cache infrastructure remove the code which supports that and just proxy I/O straight through to regmap. Signed-off-by: Mark Brown <broonie@linaro.org>
This commit is contained in:
Родитель
a32c17b87c
Коммит
657254714a
|
@ -23,21 +23,6 @@
|
||||||
static int hw_write(struct snd_soc_codec *codec, unsigned int reg,
|
static int hw_write(struct snd_soc_codec *codec, unsigned int reg,
|
||||||
unsigned int value)
|
unsigned int value)
|
||||||
{
|
{
|
||||||
int ret;
|
|
||||||
|
|
||||||
if (!snd_soc_codec_volatile_register(codec, reg) &&
|
|
||||||
reg < codec->driver->reg_cache_size &&
|
|
||||||
!codec->cache_bypass) {
|
|
||||||
ret = snd_soc_cache_write(codec, reg, value);
|
|
||||||
if (ret < 0)
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (codec->cache_only) {
|
|
||||||
codec->cache_sync = 1;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
return regmap_write(codec->control_data, reg, value);
|
return regmap_write(codec->control_data, reg, value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -46,23 +31,11 @@ static unsigned int hw_read(struct snd_soc_codec *codec, unsigned int reg)
|
||||||
int ret;
|
int ret;
|
||||||
unsigned int val;
|
unsigned int val;
|
||||||
|
|
||||||
if (reg >= codec->driver->reg_cache_size ||
|
ret = regmap_read(codec->control_data, reg, &val);
|
||||||
snd_soc_codec_volatile_register(codec, reg) ||
|
if (ret == 0)
|
||||||
codec->cache_bypass) {
|
return val;
|
||||||
if (codec->cache_only)
|
else
|
||||||
return -1;
|
|
||||||
|
|
||||||
ret = regmap_read(codec->control_data, reg, &val);
|
|
||||||
if (ret == 0)
|
|
||||||
return val;
|
|
||||||
else
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
ret = snd_soc_cache_read(codec, reg, &val);
|
|
||||||
if (ret < 0)
|
|
||||||
return -1;
|
return -1;
|
||||||
return val;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Загрузка…
Ссылка в новой задаче