Merge branch 'fix/asoc' into for-linus
authorTakashi Iwai <tiwai@suse.de>
Wed, 23 Dec 2009 17:50:13 +0000 (18:50 +0100)
committerTakashi Iwai <tiwai@suse.de>
Wed, 23 Dec 2009 17:50:13 +0000 (18:50 +0100)
sound/soc/codecs/wm9712.c
sound/soc/imx/mx27vis_wm8974.c
sound/soc/sh/fsi.c

index 0ac1215dcd9b5e3140b4fa662d44c91f4ec8bc30..e237bf615129cb7e32799f85762842bd683898a4 100644 (file)
@@ -463,7 +463,8 @@ static int ac97_write(struct snd_soc_codec *codec, unsigned int reg,
 {
        u16 *cache = codec->reg_cache;
 
-       soc_ac97_ops.write(codec->ac97, reg, val);
+       if (reg < 0x7c)
+               soc_ac97_ops.write(codec->ac97, reg, val);
        reg = reg >> 1;
        if (reg < (ARRAY_SIZE(wm9712_reg)))
                cache[reg] = val;
index 0267d2d91685775ff6f5e957df424794180ae781..07d2a248438c059ec3d5c8c5f1ebf28fa8f03895 100644 (file)
@@ -180,7 +180,8 @@ static int mx27vis_hifi_hw_free(struct snd_pcm_substream *substream)
        struct snd_soc_dai *codec_dai = rtd->dai->codec_dai;
 
        /* disable the PLL */
-       return codec_dai->ops->set_pll(codec_dai, IGNORED_ARG, 0, 0);
+       return codec_dai->ops->set_pll(codec_dai, IGNORED_ARG, IGNORED_ARG,
+                                      0, 0);
 }
 
 /*
index 9c49c11c43ce4da1af6a122bd041dfce9e228838..42813b80838988c96b62cf5a91f06d870dbc2f6e 100644 (file)
@@ -876,7 +876,7 @@ static int fsi_probe(struct platform_device *pdev)
 
        res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
        irq = platform_get_irq(pdev, 0);
-       if (!res || !irq) {
+       if (!res || (int)irq <= 0) {
                dev_err(&pdev->dev, "Not enough FSI platform resources.\n");
                ret = -ENODEV;
                goto exit;