Re: [PATCH 1/2] ASoC: Check for exact register match in wm97xx_reset()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



At Fri, 13 Jun 2008 15:39:12 +0100,
Mark Brown wrote:
> 
> To provide added robustness in case an AC97 controller reads back all
> zeros in error cases check for an exact match when testing to see if
> resets have brought the codec back.
> 
> Signed-off-by: Mark Brown <broonie@xxxxxxxxxxxxxxxxxxxxxxxxxxx>
> ---
>  sound/soc/codecs/wm9712.c |    4 ++--
>  sound/soc/codecs/wm9713.c |    4 ++--
>  2 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/sound/soc/codecs/wm9712.c b/sound/soc/codecs/wm9712.c
> index 28ac66f..09e2985 100644
> --- a/sound/soc/codecs/wm9712.c
> +++ b/sound/soc/codecs/wm9712.c
> @@ -589,12 +589,12 @@ static int wm9712_reset(struct snd_soc_codec *codec, int try_warm)
>  {
>  	if (try_warm && soc_ac97_ops.warm_reset) {
>  		soc_ac97_ops.warm_reset(codec->ac97);
> -		if (!(ac97_read(codec, 0) & 0x8000))
> +		if (ac97_read(codec, 0) == 0x6174)
>  			return 1;
>  	}
>  
>  	soc_ac97_ops.reset(codec->ac97);
> -	if (ac97_read(codec, 0) & 0x8000)
> +	if (ac97_read(codec, 0) != 0x6174)

Can we define this magic value more understandable?

>  		goto err;
>  	return 0;
>  
> diff --git a/sound/soc/codecs/wm9713.c b/sound/soc/codecs/wm9713.c
> index aba3301..131bb5b 100644
> --- a/sound/soc/codecs/wm9713.c
> +++ b/sound/soc/codecs/wm9713.c
> @@ -1076,12 +1076,12 @@ int wm9713_reset(struct snd_soc_codec *codec, int try_warm)
>  {
>  	if (try_warm && soc_ac97_ops.warm_reset) {
>  		soc_ac97_ops.warm_reset(codec->ac97);
> -		if (!(ac97_read(codec, 0) & 0x8000))
> +		if (ac97_read(codec, 0) == 0x6174)
>  			return 1;
>  	}
>  
>  	soc_ac97_ops.reset(codec->ac97);
> -	if (ac97_read(codec, 0) & 0x8000)
> +	if (ac97_read(codec, 0) != 0x6174)

Ditto.


thanks,

Takashi
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux