aboutsummaryrefslogtreecommitdiffstats
path: root/include/sound
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2008-11-18 17:11:38 -0500
committerMark Brown <broonie@opensource.wolfsonmicro.com>2008-11-21 09:12:10 -0500
commitdee89c4d94433520e4e3977ae203d4cfbfe385fb (patch)
treebdbe4c54cd9789b02a6d0bf5f75a47b8721e073e /include/sound
parenta47cbe7263236691ee0bbc392f7fd4ec0da1159f (diff)
ASoC: Merge snd_soc_ops into snd_soc_dai_ops
Liam Girdwood's ASoC v2 work avoids having two different ops structures for DAIs by merging the members of struct snd_soc_ops into struct snd_soc_dai_ops, allowing per DAI configuration for everything. Backport this change. This paves the way for future work allowing any combination of DAIs to be connected rather than having fixed purpose CODEC and CPU DAIs and only allowing CODEC<->CPU interconnections. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'include/sound')
-rw-r--r--include/sound/soc-dai.h20
1 files changed, 18 insertions, 2 deletions
diff --git a/include/sound/soc-dai.h b/include/sound/soc-dai.h
index 08b8f7025c64..f51cb55902f7 100644
--- a/include/sound/soc-dai.h
+++ b/include/sound/soc-dai.h
@@ -156,6 +156,23 @@ struct snd_soc_dai_ops {
156 * Called by soc-core to minimise any pops. 156 * Called by soc-core to minimise any pops.
157 */ 157 */
158 int (*digital_mute)(struct snd_soc_dai *dai, int mute); 158 int (*digital_mute)(struct snd_soc_dai *dai, int mute);
159
160 /*
161 * ALSA PCM audio operations - all optional.
162 * Called by soc-core during audio PCM operations.
163 */
164 int (*startup)(struct snd_pcm_substream *,
165 struct snd_soc_dai *);
166 void (*shutdown)(struct snd_pcm_substream *,
167 struct snd_soc_dai *);
168 int (*hw_params)(struct snd_pcm_substream *,
169 struct snd_pcm_hw_params *, struct snd_soc_dai *);
170 int (*hw_free)(struct snd_pcm_substream *,
171 struct snd_soc_dai *);
172 int (*prepare)(struct snd_pcm_substream *,
173 struct snd_soc_dai *);
174 int (*trigger)(struct snd_pcm_substream *, int,
175 struct snd_soc_dai *);
159}; 176};
160 177
161/* 178/*
@@ -180,8 +197,7 @@ struct snd_soc_dai {
180 struct snd_soc_dai *dai); 197 struct snd_soc_dai *dai);
181 198
182 /* ops */ 199 /* ops */
183 struct snd_soc_ops ops; 200 struct snd_soc_dai_ops ops;
184 struct snd_soc_dai_ops dai_ops;
185 201
186 /* DAI capabilities */ 202 /* DAI capabilities */
187 struct snd_soc_pcm_stream capture; 203 struct snd_soc_pcm_stream capture;