diff options
author | Xiubo Li <Li.Xiubo@freescale.com> | 2014-03-26 01:40:23 -0400 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2014-04-14 12:22:18 -0400 |
commit | a39f75f7907fa3a708751dc283e3ab3e7da526b8 (patch) | |
tree | 464d1902678907ac8ab6f8999f6f49381e0fcaa2 /sound/soc/soc-io.c | |
parent | c9eaa447e77efe77b7fa4c953bd62de8297fd6c5 (diff) |
ASoC: core: Move the default regmap I/O setting to snd_soc_register_codec()
Add the default regmap I/O setting to snd_soc_register_codec() while
the CODEC is initialising, which will be called by CODEC driver device
probe(), and then we can make XXX_set_cache_io() go away entirely from each
CODEC ASoC probe.
Signed-off-by: Xiubo Li <Li.Xiubo@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
Diffstat (limited to 'sound/soc/soc-io.c')
-rw-r--r-- | sound/soc/soc-io.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/sound/soc/soc-io.c b/sound/soc/soc-io.c index 260efc8466fc..6480e8f29310 100644 --- a/sound/soc/soc-io.c +++ b/sound/soc/soc-io.c | |||
@@ -60,14 +60,11 @@ int snd_soc_codec_set_cache_io(struct snd_soc_codec *codec, | |||
60 | { | 60 | { |
61 | int ret; | 61 | int ret; |
62 | 62 | ||
63 | /* Device has made its own regmap arrangements */ | ||
64 | if (!regmap) | 63 | if (!regmap) |
65 | codec->control_data = dev_get_regmap(codec->dev, NULL); | 64 | return -EINVAL; |
66 | else | ||
67 | codec->control_data = regmap; | ||
68 | 65 | ||
69 | if (IS_ERR(codec->control_data)) | 66 | /* Device has made its own regmap arrangements */ |
70 | return PTR_ERR(codec->control_data); | 67 | codec->control_data = regmap; |
71 | 68 | ||
72 | codec->write = hw_write; | 69 | codec->write = hw_write; |
73 | codec->read = hw_read; | 70 | codec->read = hw_read; |