[alsa-devel] [PATCH] ASoC: ad1980: Return proper error if vendor id mismatch

Girdwood, Liam lrg at ti.com
Thu Sep 8 23:14:20 CEST 2011


On 6 September 2011 03:37, Axel Lin <axel.lin at gmail.com> wrote:

> Return -ENODEV instead of 0 if vendor id mismatch.
>
> Signed-off-by: Axel Lin <axel.lin at gmail.com>
> ---
>  sound/soc/codecs/ad1980.c |   10 +++++++---
>  1 files changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/sound/soc/codecs/ad1980.c b/sound/soc/codecs/ad1980.c
> index 923b364..4c0fc30 100644
> --- a/sound/soc/codecs/ad1980.c
> +++ b/sound/soc/codecs/ad1980.c
> @@ -200,18 +200,22 @@ static int ad1980_soc_probe(struct snd_soc_codec
> *codec)
>        }
>
>        /* Read out vendor ID to make sure it is ad1980 */
> -       if (ac97_read(codec, AC97_VENDOR_ID1) != 0x4144)
> +       if (ac97_read(codec, AC97_VENDOR_ID1) != 0x4144) {
> +               ret = -ENODEV;
>                goto reset_err;
> +       }
>
>        vendor_id2 = ac97_read(codec, AC97_VENDOR_ID2);
>
>        if (vendor_id2 != 0x5370) {
> -               if (vendor_id2 != 0x5374)
> +               if (vendor_id2 != 0x5374) {
> +                       ret = -ENODEV;
>                        goto reset_err;
> -               else
> +               } else {
>                        printk(KERN_WARNING "ad1980: "
>                                "Found AD1981 - only 2/2 IN/OUT Channels "
>                                "supported\n");
> +               }
>        }
>
>        /* unmute captures and playbacks volume */
> --
> 1.7.4.1
>
>
>
>
Acked-by Liam Girdwood <lrg at ti.com>


More information about the Alsa-devel mailing list