summaryrefslogtreecommitdiffstats
path: root/sound/soc/sh/rcar/rsnd.h
diff options
context:
space:
mode:
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>2017-06-15 00:50:19 +0000
committerMark Brown <broonie@kernel.org>2017-06-15 18:18:08 +0100
commit8cc03722403a5153054993388857e4e565dcdfb1 (patch)
treea887ccfdccfd249e46cbfae0269d347448f9a527 /sound/soc/sh/rcar/rsnd.h
parentef4cf5d6a143e04e149ad81fc491fe10855544fe (diff)
downloadlinux-stable-8cc03722403a5153054993388857e4e565dcdfb1.tar.gz
linux-stable-8cc03722403a5153054993388857e4e565dcdfb1.tar.bz2
linux-stable-8cc03722403a5153054993388857e4e565dcdfb1.zip
ASoC: rsnd: add rsnd_soc_hw_rule/constraint()
Current Renesas sound driver is assuming that all Sampling rate and channles are possible to use, but these are depends on inputed clock and SSI connection situation. For example, if it is using 1 SSI, enabled TDM mode and has 12288000 input clock, 2ch output can support until 192000Hz, but 6ch output can support until 64000Hz, 8ch can support 48000Hz. To control these situation correctly, it needs to support hw_constraints / refine feature. To support such feature, this patch adds new rsnd_soc_hw_rule/constraint() which adds hw rule of Channel and Sampling Rate. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Tested-by: Hiroyuki Yokoyama <hiroyuki.yokoyama.vx@renesas.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/sh/rcar/rsnd.h')
-rw-r--r--sound/soc/sh/rcar/rsnd.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sound/soc/sh/rcar/rsnd.h b/sound/soc/sh/rcar/rsnd.h
index 3aa07a07bbcb..9428d4e288dd 100644
--- a/sound/soc/sh/rcar/rsnd.h
+++ b/sound/soc/sh/rcar/rsnd.h
@@ -449,6 +449,7 @@ struct rsnd_dai {
struct rsnd_dai_stream playback;
struct rsnd_dai_stream capture;
struct rsnd_priv *priv;
+ struct snd_pcm_hw_constraint_list constraint;
int max_channels; /* 2ch - 16ch */
int ssi_lane; /* 1lane - 4lane */