[alsa-devel] [PATCH] ASoC: wm8962: fix lambda value

Charles Keepax ckeepax at opensource.cirrus.com
Thu Dec 12 17:48:35 CET 2019


On Wed, Dec 11, 2019 at 07:57:22PM +0800, Shengjiu Wang wrote:
> According to user manual, it is required that FLL_LAMBDA > 0
> in all cases (Integer and Franctional modes).
> 
> Fixes: 9a76f1ff6e29 ("ASoC: Add initial WM8962 CODEC driver")
> Signed-off-by: Shengjiu Wang <shengjiu.wang at nxp.com>
> ---
>  sound/soc/codecs/wm8962.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/sound/soc/codecs/wm8962.c b/sound/soc/codecs/wm8962.c
> index 3e5c69fbc33a..d9d59f45833f 100644
> --- a/sound/soc/codecs/wm8962.c
> +++ b/sound/soc/codecs/wm8962.c
> @@ -2788,7 +2788,7 @@ static int fll_factors(struct _fll_div *fll_div, unsigned int Fref,
>  
>  	if (target % Fref == 0) {
>  		fll_div->theta = 0;
> -		fll_div->lambda = 0;
> +		fll_div->lambda = 1;
>  	} else {
>  		gcd_fll = gcd(target, fratio * Fref);
>  
> @@ -2858,7 +2858,7 @@ static int wm8962_set_fll(struct snd_soc_component *component, int fll_id, int s
>  		return -EINVAL;
>  	}
>  
> -	if (fll_div.theta || fll_div.lambda)
> +	if (fll_div.theta)
>  		fll1 |= WM8962_FLL_FRAC;

How well tested is this change, and is it addressing an issue you
have observed? I agree this does better fit the datasheet just a
little nervous as its an older part that has seen a lot of usage.

Thanks,
Charles


More information about the Alsa-devel mailing list