summaryrefslogtreecommitdiff
path: root/sound/soc/soc-core.c
diff options
context:
space:
mode:
authorCezary Rojewski <cezary.rojewski@intel.com>2020-07-31 16:41:44 +0200
committerMark Brown <broonie@kernel.org>2020-07-31 19:35:57 +0100
commit08ff7209faf21daa01bf66c91c321ce52d4b4bdb (patch)
tree65e53204dbbe3f2fa03fc408cd10131ed7e33c31 /sound/soc/soc-core.c
parent14e5ad7d118997741aa567dfc4398f72762ff08a (diff)
downloadlwn-08ff7209faf21daa01bf66c91c321ce52d4b4bdb.tar.gz
lwn-08ff7209faf21daa01bf66c91c321ce52d4b4bdb.zip
ASoC: core: Relocate and expose snd_soc_component_initialize
To allow for two-step component registration, expose snd_soc_component_initialize function and move it back to soc-core.c. Signed-off-by: Cezary Rojewski <cezary.rojewski@intel.com> Link: https://lore.kernel.org/r/20200731144146.6678-2-cezary.rojewski@intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/soc-core.c')
-rw-r--r--sound/soc/soc-core.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/sound/soc/soc-core.c b/sound/soc/soc-core.c
index defd96b14c28..36eba1bb1ce1 100644
--- a/sound/soc/soc-core.c
+++ b/sound/soc/soc-core.c
@@ -2438,6 +2438,23 @@ static void snd_soc_del_component_unlocked(struct snd_soc_component *component)
list_del(&component->list);
}
+int snd_soc_component_initialize(struct snd_soc_component *component,
+ const struct snd_soc_component_driver *driver,
+ struct device *dev, const char *name)
+{
+ INIT_LIST_HEAD(&component->dai_list);
+ INIT_LIST_HEAD(&component->dobj_list);
+ INIT_LIST_HEAD(&component->card_list);
+ mutex_init(&component->io_mutex);
+
+ component->name = name;
+ component->dev = dev;
+ component->driver = driver;
+
+ return 0;
+}
+EXPORT_SYMBOL_GPL(snd_soc_component_initialize);
+
int snd_soc_add_component(struct device *dev,
struct snd_soc_component *component,
const struct snd_soc_component_driver *component_driver,