summaryrefslogtreecommitdiffstats
path: root/sound/soc
diff options
context:
space:
mode:
authorKuninori Morimoto <kuninori.morimoto.gx@renesas.com>2018-10-17 01:54:33 +0000
committerMark Brown <broonie@kernel.org>2018-10-17 20:01:29 +0100
commit4e9e07c5675706983ed649cfb92521a4d8aa1d6d (patch)
tree3542a6057cf20e750a3e3bec6795c8a2e4b345f0 /sound/soc
parentfce9ec954a8af7e04cbf5b9daa8bec9c1df5cfe6 (diff)
downloadlinux-4e9e07c5675706983ed649cfb92521a4d8aa1d6d.tar.bz2
ASoC: pcm3168a: add hw constraint for capture channel
LEFT_J / I2S only can use TDM. commit 594680ea4a394 ("ASoC: pcm3168a: add hw constraint for channel") commit 3809688980205 ("ASoC: pcm3168a: add HW constraint for non RIGHT_J") added channel constraint for it, but, it was only for playback. This patch adds constraint for capture. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc')
-rw-r--r--sound/soc/codecs/pcm3168a.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/sound/soc/codecs/pcm3168a.c b/sound/soc/codecs/pcm3168a.c
index 63aa02592bc0..52cc950c9fd1 100644
--- a/sound/soc/codecs/pcm3168a.c
+++ b/sound/soc/codecs/pcm3168a.c
@@ -529,11 +529,17 @@ static int pcm3168a_startup(struct snd_pcm_substream *substream,
break;
case PCM3168A_FMT_LEFT_J:
sample_min = 24;
- channel_max = 8;
+ if (tx)
+ channel_max = 8;
+ else
+ channel_max = 6;
break;
case PCM3168A_FMT_I2S:
sample_min = 24;
- channel_max = 8;
+ if (tx)
+ channel_max = 8;
+ else
+ channel_max = 6;
break;
default:
sample_min = 24;
@@ -559,6 +565,7 @@ static const struct snd_soc_dai_ops pcm3168a_dac_dai_ops = {
};
static const struct snd_soc_dai_ops pcm3168a_adc_dai_ops = {
+ .startup = pcm3168a_startup,
.set_fmt = pcm3168a_set_dai_fmt_adc,
.set_sysclk = pcm3168a_set_dai_sysclk,
.hw_params = pcm3168a_hw_params