Merge branch 'topic/component' of git://git.kernel.org/pub/scm/linux/kernel/git/broon...
[muen/linux.git] / include / sound / soc.h
index de57a8ad057b8f1e334dd68938cc585f68ab1118..538e9880e010eecf55a0024c3a7d18b8a2a2ca64 100644 (file)
@@ -886,6 +886,18 @@ struct snd_soc_component {
 #endif
 };
 
+struct snd_soc_rtdcom_list {
+       struct snd_soc_component *component;
+       struct list_head list; /* rtd::component_list */
+};
+struct snd_soc_component*
+snd_soc_rtdcom_lookup(struct snd_soc_pcm_runtime *rtd,
+                      const char *driver_name);
+#define for_each_rtdcom(rtd, rtdcom) \
+       list_for_each_entry(rtdcom, &(rtd)->component_list, list)
+#define for_each_rtdcom_safe(rtd, rtdcom1, rtdcom2) \
+       list_for_each_entry_safe(rtdcom1, rtdcom2, &(rtd)->component_list, list)
+
 /* SoC Audio Codec device */
 struct snd_soc_codec {
        struct device *dev;
@@ -894,7 +906,6 @@ struct snd_soc_codec {
        struct list_head list;
 
        /* runtime */
-       unsigned int cache_bypass:1; /* Suppress access to the cache */
        unsigned int cache_init:1; /* codec cache has been initialized */
 
        /* codec IO */
@@ -904,10 +915,6 @@ struct snd_soc_codec {
 
        /* component */
        struct snd_soc_component component;
-
-#ifdef CONFIG_DEBUG_FS
-       struct dentry *debugfs_reg;
-#endif
 };
 
 /* codec driver */
@@ -1230,7 +1237,7 @@ struct snd_soc_pcm_runtime {
        struct snd_pcm *pcm;
        struct snd_compr *compr;
        struct snd_soc_codec *codec;
-       struct snd_soc_platform *platform;
+       struct snd_soc_platform *platform; /* will be removed */
        struct snd_soc_dai *codec_dai;
        struct snd_soc_dai *cpu_dai;
 
@@ -1245,6 +1252,7 @@ struct snd_soc_pcm_runtime {
 
        unsigned int num; /* 0-based and monotonic increasing */
        struct list_head list; /* rtd list of the soc card */
+       struct list_head component_list; /* list of connected components */
 
        /* bit field */
        unsigned int dev_registered:1;