[alsa-devel] [PATCH] ASoC: Intel: kbl: Enabling ASRC for RT5663 codec on kabylake platform

Naveen M naveen.m at intel.com
Wed Aug 16 12:47:47 CEST 2017


On Wed, Aug 16, 2017 at 03:55:59PM +0530, Naveen M wrote:

Missed Version tagging, shall repost. Thanks

> From: Harsha Priya N <harshapriya.n at intel.com>
> 
> Patch fixes cracking noise in rt5663 headphones for kbl platform by
> calling rt5663_sel_asrc_clk_src() for RT5663_AD_STEREO_FILTER to set
> ASRC.
> 
> The ASRC function is for asynchronous MCLK and LRCLK. For RT5663 ASRC
> should be enabled to support pcm format with 100fs.
> ASRC function will track i2s clock and generate corresponding
> system clock for codec. Calling this func helps select clock source
> for both RT5663_AD_STEREO_FILTER and RT5663_DA_STEREO_FILTER filters
> which fixes the crackling sound.
> 
> Signed-off-by: Harsha Priya <harshapriya.n at intel.com>
> Signed-off-by: Shruthi Sudhakar <shruthi.sudhakar at intel.com>
> Signed-off-by: Naveen M <naveen.m at intel.com>
> 
> diff --git a/sound/soc/intel/boards/kbl_rt5663_max98927.c b/sound/soc/intel/boards/kbl_rt5663_max98927.c
> index f9ba977..29b50e4 100644
> --- a/sound/soc/intel/boards/kbl_rt5663_max98927.c
> +++ b/sound/soc/intel/boards/kbl_rt5663_max98927.c
> @@ -312,11 +312,13 @@ static int kabylake_rt5663_hw_params(struct snd_pcm_substream *substream,
>  	struct snd_soc_dai *codec_dai = rtd->codec_dai;
>  	int ret;
>  
> -	ret = snd_soc_dai_set_sysclk(codec_dai,
> -			RT5663_SCLK_S_MCLK, 24576000, SND_SOC_CLOCK_IN);
>  	/* use ASRC for internal clocks, as PLL rate isn't multiple of BCLK */
> -	rt5663_sel_asrc_clk_src(codec_dai->codec, RT5663_DA_STEREO_FILTER, 1);
> +	rt5663_sel_asrc_clk_src(codec_dai->codec,
> +			RT5663_DA_STEREO_FILTER | RT5663_AD_STEREO_FILTER,
> +			RT5663_CLK_SEL_I2S1_ASRC);
>  
> +	ret = snd_soc_dai_set_sysclk(codec_dai,
> +			RT5663_SCLK_S_MCLK, 24576000, SND_SOC_CLOCK_IN);
>  	if (ret < 0)
>  		dev_err(rtd->dev, "snd_soc_dai_set_sysclk err = %d\n", ret);
>  
> -- 
> 1.9.1
> 

-- 


More information about the Alsa-devel mailing list