Browse Source

ASoC: rx1950: Fix clkdiv for 16khz and 48khz

Usage of 256 as clkdiv gives better rounding error (<1%)
for 16khz and 48khz

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Vasily Khoruzhick 14 years ago
parent
commit
1fdc7dd537
1 changed files with 3 additions and 3 deletions
  1. 3 3
      sound/soc/s3c24xx/rx1950_uda1380.c

+ 3 - 3
sound/soc/s3c24xx/rx1950_uda1380.c

@@ -171,9 +171,9 @@ static int rx1950_hw_params(struct snd_pcm_substream *substream,
 	case 16000:
 	case 48000:
 		clk_source = S3C24XX_CLKSRC_PCLK;
-		fs_mode = S3C2410_IISMOD_384FS;
-		div = s3c24xx_i2s_get_clockrate() / (384 * rate);
-		if (s3c24xx_i2s_get_clockrate() % (384 * rate) > (182 * rate))
+		fs_mode = S3C2410_IISMOD_256FS;
+		div = s3c24xx_i2s_get_clockrate() / (256 * rate);
+		if (s3c24xx_i2s_get_clockrate() % (256 * rate) > (128 * rate))
 			div++;
 		break;
 	case 44100: