summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>2017-08-24 00:57:35 +0000
committerMark Brown <broonie@kernel.org>2017-08-30 22:16:16 +0100
commit71ccef0df533cd9c8c6cbf1483a636a092088ab9 (patch)
treed0c9526d22dcf16f0b039eb5ca4303dfafbd5de5 /include
parentb388dc1f62a9bdd9c4758a0664e61d0f9a9da519 (diff)
downloadlinux-71ccef0df533cd9c8c6cbf1483a636a092088ab9.tar.bz2
ASoC: add Component level set_sysclk
In current ALSA SoC, Codec only has set_sysclk feature. Codec will be merged into Component in next generation ALSA SoC, thus current Codec specific feature need to be merged into it. This is glue patch for it. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'include')
-rw-r--r--include/sound/soc.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/sound/soc.h b/include/sound/soc.h
index fbf57ff75958..813cdb95e049 100644
--- a/include/sound/soc.h
+++ b/include/sound/soc.h
@@ -795,6 +795,10 @@ struct snd_soc_component_driver {
int (*suspend)(struct snd_soc_component *);
int (*resume)(struct snd_soc_component *);
+ /* component wide operations */
+ int (*set_sysclk)(struct snd_soc_component *component,
+ int clk_id, int source, unsigned int freq, int dir);
+
/* DT */
int (*of_xlate_dai_name)(struct snd_soc_component *component,
struct of_phandle_args *args,
@@ -865,6 +869,9 @@ struct snd_soc_component {
int (*suspend)(struct snd_soc_component *);
int (*resume)(struct snd_soc_component *);
+ int (*set_sysclk)(struct snd_soc_component *component,
+ int clk_id, int source, unsigned int freq, int dir);
+
/* machine specific init */
int (*init)(struct snd_soc_component *component);
@@ -1459,6 +1466,10 @@ void snd_soc_component_async_complete(struct snd_soc_component *component);
int snd_soc_component_test_bits(struct snd_soc_component *component,
unsigned int reg, unsigned int mask, unsigned int value);
+/* component wide operations */
+int snd_soc_component_set_sysclk(struct snd_soc_component *component,
+ int clk_id, int source, unsigned int freq, int dir);
+
#ifdef CONFIG_REGMAP
void snd_soc_component_init_regmap(struct snd_soc_component *component,