aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorDong Aisheng <b29396@freescale.com>2011-08-29 05:15:14 -0400
committerMark Brown <broonie@opensource.wolfsonmicro.com>2011-09-21 10:59:46 -0400
commit17841020e9d3dbd4e8114c2142c2bc6d45c01da1 (patch)
tree7f7adb00fea156ae2c9e056439bee389d5ed10e8 /include
parent548aae8cc497397310c66c336ed9c4f7dd5be4f4 (diff)
ASoC: soc-core: symmetry checking for each DAIs separately
The orginal code does not cover the case that one DAI such as codec may be shared between other two DAIs(CPU). When do symmetry checking, altough the codec DAI requires symmetry, the two CPU DAIs may still be configured to run on different rates. We change to check each DAI's state separately instead of only checking the dai link to prevent this issue. Signed-off-by: Dong Aisheng <b29396@freescale.com> Tested-by: Wolfram Sang <w.sang@pengutronix.de> Acked-by: Liam Girdwood <lrg@ti.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'include')
-rw-r--r--include/sound/soc-dai.h3
-rw-r--r--include/sound/soc.h2
2 files changed, 3 insertions, 2 deletions
diff --git a/include/sound/soc-dai.h b/include/sound/soc-dai.h
index 5ad5f3a50c68..12d98b435444 100644
--- a/include/sound/soc-dai.h
+++ b/include/sound/soc-dai.h
@@ -242,6 +242,9 @@ struct snd_soc_dai {
242 void *playback_dma_data; 242 void *playback_dma_data;
243 void *capture_dma_data; 243 void *capture_dma_data;
244 244
245 /* Symmetry data - only valid if symmetry is being enforced */
246 unsigned int rate;
247
245 /* parent platform/codec */ 248 /* parent platform/codec */
246 union { 249 union {
247 struct snd_soc_platform *platform; 250 struct snd_soc_platform *platform;
diff --git a/include/sound/soc.h b/include/sound/soc.h
index 006f4f633c52..b499b37a6776 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
@@ -851,8 +851,6 @@ struct snd_soc_pcm_runtime {
851 unsigned int complete:1; 851 unsigned int complete:1;
852 unsigned int dev_registered:1; 852 unsigned int dev_registered:1;
853 853
854 /* Symmetry data - only valid if symmetry is being enforced */
855 unsigned int rate;
856 long pmdown_time; 854 long pmdown_time;
857 855
858 /* runtime devices */ 856 /* runtime devices */