summaryrefslogtreecommitdiff
path: root/sound/soc/fsl/imx-ak4497.c
diff options
context:
space:
mode:
authorViorel Suman <viorel.suman@nxp.com>2018-02-12 12:35:19 +0200
committerDong Aisheng <aisheng.dong@nxp.com>2019-11-25 15:50:36 +0800
commit3be16c7bc4e9796f1bbce5bfc726211356d8ba6e (patch)
tree70b70e0cec393cd60e8f880f6db52b25329c43cb /sound/soc/fsl/imx-ak4497.c
parentc04acda5e45e74d306919d9b5dc04da7eed65ab2 (diff)
MLK-15071: ASoC: fsl: imx-ak4497: Fix clk for 384KHz and 786KHz (part 2)
With the current multipliers SAI isn't able to derive a correct bitclk. e.g: When playing at 786Khz with current multiplier MCLK = 22579200, requested freq 22579200 but SAI wants: MCLK = (DIV + 1) * 2 * freq [SAI TCR2], so an acceptable solution is to add a 2x factor to mclk. Signed-off-by: Viorel Suman <viorel.suman@nxp.com> [ Aisheng: split codec changes ] Signed-off-by: Dong Aisheng <aisheng.dong@nxp.com>
Diffstat (limited to 'sound/soc/fsl/imx-ak4497.c')
-rw-r--r--sound/soc/fsl/imx-ak4497.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sound/soc/fsl/imx-ak4497.c b/sound/soc/fsl/imx-ak4497.c
index b1bd6264e105..71dee45ce40f 100644
--- a/sound/soc/fsl/imx-ak4497.c
+++ b/sound/soc/fsl/imx-ak4497.c
@@ -45,8 +45,8 @@ static const struct imx_ak4497_fs_mul {
{ .min = 44100, .max = 48000, .mul = 512 }, /* Normal */
{ .min = 88200, .max = 96000, .mul = 256 }, /* Double */
{ .min = 176400, .max = 192000, .mul = 128 }, /* Quad */
- { .min = 384000, .max = 384000, .mul = 64 }, /* Oct */
- { .min = 768000, .max = 768000, .mul = 32 }, /* Hex */
+ { .min = 352800, .max = 384000, .mul = 2*64 }, /* Oct */
+ { .min = 705600, .max = 768000, .mul = 2*32 }, /* Hex */
};
static bool imx_ak4497_is_dsd(struct snd_pcm_hw_params *params)