ASoC: io: Retrieve val_bytes from the regmap API
Allow us to build infrastructure which needs to know the size of a value without requiring regmap based drivers to supply this information to both ASoC and regmap by asking regmap for the value. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Liam Girdwood <lrg@ti.com>
This commit is contained in:
parent
8215045181
commit
2b4bdee292
|
@ -114,6 +114,7 @@ int snd_soc_codec_set_cache_io(struct snd_soc_codec *codec,
|
|||
enum snd_soc_control_type control)
|
||||
{
|
||||
struct regmap_config config;
|
||||
int ret;
|
||||
|
||||
memset(&config, 0, sizeof(config));
|
||||
codec->write = hw_write;
|
||||
|
@ -141,6 +142,11 @@ int snd_soc_codec_set_cache_io(struct snd_soc_codec *codec,
|
|||
case SND_SOC_REGMAP:
|
||||
/* Device has made its own regmap arrangements */
|
||||
codec->using_regmap = true;
|
||||
|
||||
ret = regmap_get_val_bytes(codec->control_data);
|
||||
/* Errors are legitimate for non-integer byte multiples */
|
||||
if (ret > 0)
|
||||
codec->val_bytes = ret;
|
||||
break;
|
||||
|
||||
default:
|
||||
|
|
Loading…
Reference in a new issue