summaryrefslogtreecommitdiffstats
path: root/include/sound
diff options
context:
space:
mode:
authorMengdong Lin <mengdong.lin@linux.intel.com>2016-01-15 16:13:37 +0800
committerMark Brown <broonie@kernel.org>2016-02-15 19:38:19 +0000
commitacfc7d46cddcf71cf18772bbe8717b84eac5f672 (patch)
tree7ed01825b54581695daa640c56a156b32fc054e5 /include/sound
parent64527e8a352968bda529f01df1c9dd5fe581ff04 (diff)
downloadlinux-acfc7d46cddcf71cf18772bbe8717b84eac5f672.tar.gz
linux-acfc7d46cddcf71cf18772bbe8717b84eac5f672.tar.bz2
linux-acfc7d46cddcf71cf18772bbe8717b84eac5f672.zip
ASoC: topology: Add FE DAI links dynamically
Topology will also create FE DAI links dynamically from the PCM objects. These links will be removed when the component is removed and its topology info is unloaded. The component driver can implement link_load/unload ops for extra intialization (e.g. error check) and destruction. Signed-off-by: Mengdong Lin <mengdong.lin@linux.intel.com> Acked-by: Liam Girdwood <liam.r.girdwood@linux.intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'include/sound')
-rw-r--r--include/sound/soc-topology.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/sound/soc-topology.h b/include/sound/soc-topology.h
index 78813adca2a1..b897b9d63161 100644
--- a/include/sound/soc-topology.h
+++ b/include/sound/soc-topology.h
@@ -125,6 +125,12 @@ struct snd_soc_tplg_ops {
int (*dai_unload)(struct snd_soc_component *,
struct snd_soc_dobj *);
+ /* DAI link - used for any driver specific init */
+ int (*link_load)(struct snd_soc_component *,
+ struct snd_soc_dai_link *link);
+ int (*link_unload)(struct snd_soc_component *,
+ struct snd_soc_dobj *);
+
/* callback to handle vendor bespoke data */
int (*vendor_load)(struct snd_soc_component *,
struct snd_soc_tplg_hdr *);