summaryrefslogtreecommitdiffstats
path: root/include/sound
diff options
context:
space:
mode:
authorMengdong Lin2015-12-02 07:11:32 +0100
committerMark Brown2015-12-08 19:05:09 +0100
commitd6f220ea13edfd3430fb42e09ff92e321ffb5762 (patch)
treebf7e67c66cb63a725f1c5f6400581aa9bedf27c8 /include/sound
parentASoC: Implement DAI links in a list & define API to add/remove a link (diff)
downloadkernel-qcow2-linux-d6f220ea13edfd3430fb42e09ff92e321ffb5762.tar.gz
kernel-qcow2-linux-d6f220ea13edfd3430fb42e09ff92e321ffb5762.tar.xz
kernel-qcow2-linux-d6f220ea13edfd3430fb42e09ff92e321ffb5762.zip
ASoC: Define add/remove_dai_link ops for a soc card
A machine driver can register the two ops. When a DAI link is added or removed by a component's topology, the ASoC core can call the ops to notify the machine driver for extra intialization or destruction. E.g. topology can create FE DAI links from a cpu DAI component, and the machine driver may define an add_dai_link ops to set machine-specific .init ops for the DAI link. Signed-off-by: Mengdong Lin <mengdong.lin@linux.intel.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'include/sound')
-rw-r--r--include/sound/soc.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/include/sound/soc.h b/include/sound/soc.h
index 410cb0b422be..af347bcdc2f6 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
@@ -1104,6 +1104,11 @@ struct snd_soc_card {
struct snd_soc_dapm_context *dapm,
enum snd_soc_bias_level level);
+ int (*add_dai_link)(struct snd_soc_card *,
+ struct snd_soc_dai_link *link);
+ void (*remove_dai_link)(struct snd_soc_card *,
+ struct snd_soc_dai_link *link);
+
long pmdown_time;
/* CPU <--> Codec DAI links */