ASoC: rl6231: fix range of DMIC clock
authorJohn Lin <john.lin@realtek.com>
Mon, 16 Nov 2015 06:41:07 +0000 (14:41 +0800)
committerMark Brown <broonie@kernel.org>
Mon, 16 Nov 2015 13:17:01 +0000 (13:17 +0000)
The maximum DMIC clock rate is 3.072 MHz for most DMIC. And it will get better
performance in higher clock rate. If we set maximum to 3 MHz in driver, we will
get a clock rate which is not even close to 3 MHz.
For example, if DMIC clock source is 24.576 MHz, the DMIC clock will be about
1.5 MHz in current code. But it will be 3.072 MHz with this patch.

Signed-off-by: John Lin <john.lin@realtek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/rl6231.c

index 18b42925314e45c1a93d7bca5fc79f47f93afe7f..1dc68ab08a1799e71ec17677c5b0da959d3cd40f 100644 (file)
@@ -82,8 +82,8 @@ int rl6231_calc_dmic_clk(int rate)
        for (i = 0; i < ARRAY_SIZE(div); i++) {
                if ((div[i] % 3) == 0)
                        continue;
-               /* find divider that gives DMIC frequency below 3MHz */
-               if (3000000 * div[i] >= rate)
+               /* find divider that gives DMIC frequency below 3.072MHz */
+               if (3072000 * div[i] >= rate)
                        return i;
        }