diff options
author | Xiubo Li <Li.Xiubo@freescale.com> | 2014-01-09 17:49:40 +0800 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2014-01-09 17:38:09 +0000 |
commit | 34787d0a258ebb3686676fb37a9e8717cbdd835a (patch) | |
tree | 0e6b774d5bd2ae2122c019afa81afd39f3066d8e | |
parent | 708ec0241c56b85176937e79314430f4f71e40c6 (diff) | |
download | linux-34787d0a258ebb3686676fb37a9e8717cbdd835a.tar.bz2 |
ASoC: simple-card: fix the cinfo error check
If the dt is used and the cinfo is NULL, the -ENOMEM should be return.
Signed-off-by: Xiubo Li <Li.Xiubo@freescale.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
-rw-r--r-- | sound/soc/generic/simple-card.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/sound/soc/generic/simple-card.c b/sound/soc/generic/simple-card.c index 6c61b1758f78..11030a63b811 100644 --- a/sound/soc/generic/simple-card.c +++ b/sound/soc/generic/simple-card.c @@ -211,15 +211,17 @@ static int asoc_simple_card_probe(struct platform_device *pdev) dev_err(dev, "parse error %d\n", ret); return ret; } + } else { + return -ENOMEM; } } else { cinfo = pdev->dev.platform_data; - cinfo->snd_card.dev = &pdev->dev; - } + if (!cinfo) { + dev_err(dev, "no info for asoc-simple-card\n"); + return -EINVAL; + } - if (!cinfo) { - dev_err(dev, "no info for asoc-simple-card\n"); - return -EINVAL; + cinfo->snd_card.dev = &pdev->dev; } if (!cinfo->name || |