From 61c23842c47203f4bbc308e3271d5ddaf52f1d28 Mon Sep 17 00:00:00 2001 From: Kuninori Morimoto Date: Wed, 17 Oct 2018 01:54:33 +0000 Subject: [PATCH] ASoC: pcm3168a: add hw constraint for capture channel LEFT_J / I2S only can use TDM. commit 13c6b1b7415ba ("ASoC: pcm3168a: add hw constraint for channel") commit d83e0873a481e ("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 Signed-off-by: Mark Brown --- sound/soc/codecs/pcm3168a.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/sound/soc/codecs/pcm3168a.c b/sound/soc/codecs/pcm3168a.c index 63aa02592bc04..52cc950c9fd17 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 -- 2.39.5