diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2008-11-18 17:11:38 -0500 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2008-11-21 09:12:10 -0500 |
commit | dee89c4d94433520e4e3977ae203d4cfbfe385fb (patch) | |
tree | bdbe4c54cd9789b02a6d0bf5f75a47b8721e073e /sound/soc/codecs/tlv320aic23.c | |
parent | a47cbe7263236691ee0bbc392f7fd4ec0da1159f (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/codecs/tlv320aic23.c')
-rw-r--r-- | sound/soc/codecs/tlv320aic23.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/sound/soc/codecs/tlv320aic23.c b/sound/soc/codecs/tlv320aic23.c index c903e4f48dc4..a4e13d0688c9 100644 --- a/sound/soc/codecs/tlv320aic23.c +++ b/sound/soc/codecs/tlv320aic23.c | |||
@@ -418,7 +418,8 @@ static int tlv320aic23_add_widgets(struct snd_soc_codec *codec) | |||
418 | } | 418 | } |
419 | 419 | ||
420 | static int tlv320aic23_hw_params(struct snd_pcm_substream *substream, | 420 | static int tlv320aic23_hw_params(struct snd_pcm_substream *substream, |
421 | struct snd_pcm_hw_params *params) | 421 | struct snd_pcm_hw_params *params, |
422 | struct snd_soc_dai *dai) | ||
422 | { | 423 | { |
423 | struct snd_soc_pcm_runtime *rtd = substream->private_data; | 424 | struct snd_soc_pcm_runtime *rtd = substream->private_data; |
424 | struct snd_soc_device *socdev = rtd->socdev; | 425 | struct snd_soc_device *socdev = rtd->socdev; |
@@ -465,7 +466,8 @@ static int tlv320aic23_hw_params(struct snd_pcm_substream *substream, | |||
465 | return 0; | 466 | return 0; |
466 | } | 467 | } |
467 | 468 | ||
468 | static int tlv320aic23_pcm_prepare(struct snd_pcm_substream *substream) | 469 | static int tlv320aic23_pcm_prepare(struct snd_pcm_substream *substream, |
470 | struct snd_soc_dai *dai) | ||
469 | { | 471 | { |
470 | struct snd_soc_pcm_runtime *rtd = substream->private_data; | 472 | struct snd_soc_pcm_runtime *rtd = substream->private_data; |
471 | struct snd_soc_device *socdev = rtd->socdev; | 473 | struct snd_soc_device *socdev = rtd->socdev; |
@@ -477,7 +479,8 @@ static int tlv320aic23_pcm_prepare(struct snd_pcm_substream *substream) | |||
477 | return 0; | 479 | return 0; |
478 | } | 480 | } |
479 | 481 | ||
480 | static void tlv320aic23_shutdown(struct snd_pcm_substream *substream) | 482 | static void tlv320aic23_shutdown(struct snd_pcm_substream *substream, |
483 | struct snd_soc_dai *dai) | ||
481 | { | 484 | { |
482 | struct snd_soc_pcm_runtime *rtd = substream->private_data; | 485 | struct snd_soc_pcm_runtime *rtd = substream->private_data; |
483 | struct snd_soc_device *socdev = rtd->socdev; | 486 | struct snd_soc_device *socdev = rtd->socdev; |
@@ -613,12 +616,10 @@ struct snd_soc_dai tlv320aic23_dai = { | |||
613 | .prepare = tlv320aic23_pcm_prepare, | 616 | .prepare = tlv320aic23_pcm_prepare, |
614 | .hw_params = tlv320aic23_hw_params, | 617 | .hw_params = tlv320aic23_hw_params, |
615 | .shutdown = tlv320aic23_shutdown, | 618 | .shutdown = tlv320aic23_shutdown, |
616 | }, | 619 | .digital_mute = tlv320aic23_mute, |
617 | .dai_ops = { | 620 | .set_fmt = tlv320aic23_set_dai_fmt, |
618 | .digital_mute = tlv320aic23_mute, | 621 | .set_sysclk = tlv320aic23_set_dai_sysclk, |
619 | .set_fmt = tlv320aic23_set_dai_fmt, | 622 | } |
620 | .set_sysclk = tlv320aic23_set_dai_sysclk, | ||
621 | } | ||
622 | }; | 623 | }; |
623 | EXPORT_SYMBOL_GPL(tlv320aic23_dai); | 624 | EXPORT_SYMBOL_GPL(tlv320aic23_dai); |
624 | 625 | ||