aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/atmel
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 /sound/soc/atmel
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 'sound/soc/atmel')
-rw-r--r--sound/soc/atmel/atmel_ssc_dai.c21
1 files changed, 11 insertions, 10 deletions
diff --git a/sound/soc/atmel/atmel_ssc_dai.c b/sound/soc/atmel/atmel_ssc_dai.c
index d290b7894917..916f73b9a18f 100644
--- a/sound/soc/atmel/atmel_ssc_dai.c
+++ b/sound/soc/atmel/atmel_ssc_dai.c
@@ -202,7 +202,8 @@ static irqreturn_t atmel_ssc_interrupt(int irq, void *dev_id)
202/* 202/*
203 * Startup. Only that one substream allowed in each direction. 203 * Startup. Only that one substream allowed in each direction.
204 */ 204 */
205static int atmel_ssc_startup(struct snd_pcm_substream *substream) 205static int atmel_ssc_startup(struct snd_pcm_substream *substream,
206 struct snd_soc_dai *dai)
206{ 207{
207 struct snd_soc_pcm_runtime *rtd = snd_pcm_substream_chip(substream); 208 struct snd_soc_pcm_runtime *rtd = snd_pcm_substream_chip(substream);
208 struct atmel_ssc_info *ssc_p = &ssc_info[rtd->dai->cpu_dai->id]; 209 struct atmel_ssc_info *ssc_p = &ssc_info[rtd->dai->cpu_dai->id];
@@ -231,7 +232,8 @@ static int atmel_ssc_startup(struct snd_pcm_substream *substream)
231 * Shutdown. Clear DMA parameters and shutdown the SSC if there 232 * Shutdown. Clear DMA parameters and shutdown the SSC if there
232 * are no other substreams open. 233 * are no other substreams open.
233 */ 234 */
234static void atmel_ssc_shutdown(struct snd_pcm_substream *substream) 235static void atmel_ssc_shutdown(struct snd_pcm_substream *substream,
236 struct snd_soc_dai *dai)
235{ 237{
236 struct snd_soc_pcm_runtime *rtd = snd_pcm_substream_chip(substream); 238 struct snd_soc_pcm_runtime *rtd = snd_pcm_substream_chip(substream);
237 struct atmel_ssc_info *ssc_p = &ssc_info[rtd->dai->cpu_dai->id]; 239 struct atmel_ssc_info *ssc_p = &ssc_info[rtd->dai->cpu_dai->id];
@@ -332,7 +334,8 @@ static int atmel_ssc_set_dai_clkdiv(struct snd_soc_dai *cpu_dai,
332 * Configure the SSC. 334 * Configure the SSC.
333 */ 335 */
334static int atmel_ssc_hw_params(struct snd_pcm_substream *substream, 336static int atmel_ssc_hw_params(struct snd_pcm_substream *substream,
335 struct snd_pcm_hw_params *params) 337 struct snd_pcm_hw_params *params,
338 struct snd_soc_dai *dai)
336{ 339{
337 struct snd_soc_pcm_runtime *rtd = snd_pcm_substream_chip(substream); 340 struct snd_soc_pcm_runtime *rtd = snd_pcm_substream_chip(substream);
338 int id = rtd->dai->cpu_dai->id; 341 int id = rtd->dai->cpu_dai->id;
@@ -600,7 +603,8 @@ static int atmel_ssc_hw_params(struct snd_pcm_substream *substream,
600} 603}
601 604
602 605
603static int atmel_ssc_prepare(struct snd_pcm_substream *substream) 606static int atmel_ssc_prepare(struct snd_pcm_substream *substream,
607 struct snd_soc_dai *dai)
604{ 608{
605 struct snd_soc_pcm_runtime *rtd = snd_pcm_substream_chip(substream); 609 struct snd_soc_pcm_runtime *rtd = snd_pcm_substream_chip(substream);
606 struct atmel_ssc_info *ssc_p = &ssc_info[rtd->dai->cpu_dai->id]; 610 struct atmel_ssc_info *ssc_p = &ssc_info[rtd->dai->cpu_dai->id];
@@ -715,8 +719,7 @@ struct snd_soc_dai atmel_ssc_dai[NUM_SSC_DEVICES] = {
715 .startup = atmel_ssc_startup, 719 .startup = atmel_ssc_startup,
716 .shutdown = atmel_ssc_shutdown, 720 .shutdown = atmel_ssc_shutdown,
717 .prepare = atmel_ssc_prepare, 721 .prepare = atmel_ssc_prepare,
718 .hw_params = atmel_ssc_hw_params,}, 722 .hw_params = atmel_ssc_hw_params,
719 .dai_ops = {
720 .set_fmt = atmel_ssc_set_dai_fmt, 723 .set_fmt = atmel_ssc_set_dai_fmt,
721 .set_clkdiv = atmel_ssc_set_dai_clkdiv,}, 724 .set_clkdiv = atmel_ssc_set_dai_clkdiv,},
722 .private_data = &ssc_info[0], 725 .private_data = &ssc_info[0],
@@ -741,8 +744,7 @@ struct snd_soc_dai atmel_ssc_dai[NUM_SSC_DEVICES] = {
741 .startup = atmel_ssc_startup, 744 .startup = atmel_ssc_startup,
742 .shutdown = atmel_ssc_shutdown, 745 .shutdown = atmel_ssc_shutdown,
743 .prepare = atmel_ssc_prepare, 746 .prepare = atmel_ssc_prepare,
744 .hw_params = atmel_ssc_hw_params,}, 747 .hw_params = atmel_ssc_hw_params,
745 .dai_ops = {
746 .set_fmt = atmel_ssc_set_dai_fmt, 748 .set_fmt = atmel_ssc_set_dai_fmt,
747 .set_clkdiv = atmel_ssc_set_dai_clkdiv,}, 749 .set_clkdiv = atmel_ssc_set_dai_clkdiv,},
748 .private_data = &ssc_info[1], 750 .private_data = &ssc_info[1],
@@ -766,8 +768,7 @@ struct snd_soc_dai atmel_ssc_dai[NUM_SSC_DEVICES] = {
766 .startup = atmel_ssc_startup, 768 .startup = atmel_ssc_startup,
767 .shutdown = atmel_ssc_shutdown, 769 .shutdown = atmel_ssc_shutdown,
768 .prepare = atmel_ssc_prepare, 770 .prepare = atmel_ssc_prepare,
769 .hw_params = atmel_ssc_hw_params,}, 771 .hw_params = atmel_ssc_hw_params,
770 .dai_ops = {
771 .set_fmt = atmel_ssc_set_dai_fmt, 772 .set_fmt = atmel_ssc_set_dai_fmt,
772 .set_clkdiv = atmel_ssc_set_dai_clkdiv,}, 773 .set_clkdiv = atmel_ssc_set_dai_clkdiv,},
773 .private_data = &ssc_info[2], 774 .private_data = &ssc_info[2],