ASoC: rsnd: move snd_kcontrol_new fucntions to core.c
[firefly-linux-kernel-4.4.55.git] / sound / soc / sh / rcar / rsnd.h
index c74c239f2ce38105305825a7d184c1d839f4f1d7..133ba1f44a86833320d90bbf68100f890a5e4795 100644 (file)
@@ -417,6 +417,51 @@ struct rsnd_priv {
        is_play;                                                        \
 })
 
+/*
+ *     rsnd_kctrl
+ */
+struct rsnd_kctrl_cfg {
+       unsigned int max;
+       unsigned int size;
+       u32 *val;
+       const char * const *texts;
+       void (*update)(struct rsnd_mod *mod);
+};
+
+#define RSND_DVC_CHANNELS      2
+struct rsnd_kctrl_cfg_m {
+       struct rsnd_kctrl_cfg cfg;
+       u32 val[RSND_DVC_CHANNELS];
+};
+
+struct rsnd_kctrl_cfg_s {
+       struct rsnd_kctrl_cfg cfg;
+       u32 val;
+};
+
+int rsnd_kctrl_new_m(struct rsnd_mod *mod,
+                    struct rsnd_dai *rdai,
+                    struct snd_soc_pcm_runtime *rtd,
+                    const unsigned char *name,
+                    void (*update)(struct rsnd_mod *mod),
+                    struct rsnd_kctrl_cfg_m *_cfg,
+                    u32 max);
+int rsnd_kctrl_new_s(struct rsnd_mod *mod,
+                    struct rsnd_dai *rdai,
+                    struct snd_soc_pcm_runtime *rtd,
+                    const unsigned char *name,
+                    void (*update)(struct rsnd_mod *mod),
+                    struct rsnd_kctrl_cfg_s *_cfg,
+                    u32 max);
+int rsnd_kctrl_new_e(struct rsnd_mod *mod,
+                    struct rsnd_dai *rdai,
+                    struct snd_soc_pcm_runtime *rtd,
+                    const unsigned char *name,
+                    struct rsnd_kctrl_cfg_s *_cfg,
+                    void (*update)(struct rsnd_mod *mod),
+                    const char * const *texts,
+                    u32 max);
+
 /*
  *     R-Car SRC
  */
@@ -431,10 +476,11 @@ int rsnd_src_ssiu_start(struct rsnd_mod *ssi_mod,
                        struct rsnd_dai *rdai,
                        int use_busif);
 int rsnd_src_ssiu_stop(struct rsnd_mod *ssi_mod,
-                      struct rsnd_dai *rdai,
-                      int use_busif);
-int rsnd_src_enable_ssi_irq(struct rsnd_mod *ssi_mod,
+                      struct rsnd_dai *rdai);
+int rsnd_src_ssi_irq_enable(struct rsnd_mod *ssi_mod,
                            struct rsnd_dai *rdai);
+int rsnd_src_ssi_irq_disable(struct rsnd_mod *ssi_mod,
+                            struct rsnd_dai *rdai);
 
 #define rsnd_src_nr(priv) ((priv)->src_nr)
 
@@ -446,6 +492,7 @@ int rsnd_ssi_probe(struct platform_device *pdev,
                   struct rsnd_priv *priv);
 struct rsnd_mod *rsnd_ssi_mod_get(struct rsnd_priv *priv, int id);
 int rsnd_ssi_is_pin_sharing(struct rsnd_mod *mod);
+int rsnd_ssi_is_dma_mode(struct rsnd_mod *mod);
 
 /*
  *     R-Car DVC