[PATCH 2/2] ASoC: wm8974: remove unsupported clock mode
From: Puyou Lu puyou.lu@gmail.com
In DSP_A mode, BIT7 of IFACE should bit 0 according to datasheet (ie. inverted frame clock is not support in this mode).
Signed-off-by: Puyou Lu puyou.lu@gmail.com --- sound/soc/codecs/wm8974.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/sound/soc/codecs/wm8974.c b/sound/soc/codecs/wm8974.c index 764bf93..7cfc896 100644 --- a/sound/soc/codecs/wm8974.c +++ b/sound/soc/codecs/wm8974.c @@ -474,6 +474,10 @@ static int wm8974_set_dai_fmt(struct snd_soc_dai *codec_dai, iface |= 0x0008; break; case SND_SOC_DAIFMT_DSP_A: + if ((fmt & SND_SOC_DAIFMT_INV_MASK) == SND_SOC_DAIFMT_IB_IF || + (fmt & SND_SOC_DAIFMT_INV_MASK) == SND_SOC_DAIFMT_NB_IF) { + return -EINVAL; + } iface |= 0x00018; break; default:
On Thu, Jul 02, 2020 at 10:30:56AM +0800, puyou.lu@gmail.com wrote:
From: Puyou Lu puyou.lu@gmail.com
In DSP_A mode, BIT7 of IFACE should bit 0 according to datasheet (ie. inverted frame clock is not support in this mode).
Signed-off-by: Puyou Lu puyou.lu@gmail.com
Acked-by: Charles Keepax ckeepax@opensource.cirrus.com
Thanks, Charles
participants (2)
-
Charles Keepax
-
puyou.lu@gmail.com