[alsa-devel] [PATCH Resend 2/8] ASoC: simple-card: fix __asoc_simple_card_dai_init

Jean-Francois Moine moinejf at free.fr
Thu Jan 23 08:11:51 CET 2014


On Thu, 23 Jan 2014 13:02:44 +0800
Xiubo Li <Li.Xiubo at freescale.com> wrote:

> If the CPU/CODEC DAI set_sysclk() is not support, the -ENOTSUPP will returnd.
> Here do the check like set_fmt().
> 
> Signed-off-by: Xiubo Li <Li.Xiubo at freescale.com>
> ---
> 
> 
> 
> The VF610 Tower and VF610 LS1 platforms' ESAI and SPDIF will depend on this
> patch too.
> 
> 
> 
> 
>  sound/soc/generic/simple-card.c | 17 +++++++++++------
>  1 file changed, 11 insertions(+), 6 deletions(-)
> 
> diff --git a/sound/soc/generic/simple-card.c b/sound/soc/generic/simple-card.c
> index 6443c87..3b8c9a2 100644
> --- a/sound/soc/generic/simple-card.c
> +++ b/sound/soc/generic/simple-card.c
> @@ -31,16 +31,21 @@ static int __asoc_simple_card_dai_init(struct snd_soc_dai *dai,
>  
>  	daifmt |= set->fmt;
>  
> -	if (daifmt)
> +	if (daifmt) {
>  		ret = snd_soc_dai_set_fmt(dai, daifmt);
> -
> -	if (ret == -ENOTSUPP) {
> -		dev_dbg(dai->dev, "ASoC: set_fmt is not supported\n");
> -		ret = 0;
> +		if (ret && ret != -ENOTSUPP) {
> +			dev_err(dai->dev, "simple-card: set_fmt error\n");
> +			return ret;
> +		}
>  	}
>  
> -	if (!ret && set->sysclk)
> +	if (set->sysclk) {
>  		ret = snd_soc_dai_set_sysclk(dai, 0, set->sysclk, 0);
> +		if (ret && ret != -ENOTSUPP) {
> +			dev_err(dai->dev, "simple-card: set_sysclk error\n");
> +			return ret;
> +		}
> +	}
>  
>  	return ret;

Sorry: you must return 0 here

>  }

-- 
Ken ar c'hentañ	|	      ** Breizh ha Linux atav! **
Jef		|		http://moinejf.free.fr/


More information about the Alsa-devel mailing list