ASoC: codecs: max98090: Allow dsp_a mode
authorMaxim Kochetkov <fido_max@inbox.ru>
Thu, 22 Jun 2023 14:20:36 +0000 (17:20 +0300)
committerMark Brown <broonie@kernel.org>
Thu, 22 Jun 2023 22:31:25 +0000 (23:31 +0100)
commitfb180283c00b435019bd9500ae027872da9faa3b
tree33cd9bb64b311e67a5ddb26bb178e9f2231dbe8f
parent82f76ac26c601c5b0c0db7f69500efc42f2ee7ed
ASoC: codecs: max98090: Allow dsp_a mode

TDM mode for max98090 is dsp_a compatible with such limitations:
1) Up to four timeslots supported.
2) Only 16 bits timeslots supported.
3) Only 2 active timeslots (L/R) supported.

We want to setup TDM mode only when dsp_a mode is selected. So move
M98090_REG_TDM_FORMAT/M98090_REG_TDM_CONTROL registers setup from
max98090_set_tdm_slot() to the max98090_dai_set_fmt(). Also extend
max98090_set_tdm_slot() with all TDM limitations check.

Signed-off-by: Maxim Kochetkov <fido_max@inbox.ru>
Link: https://lore.kernel.org/r/Message-Id:
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/max98090.c
sound/soc/codecs/max98090.h