diff options
author | Simon Baatz <gmbnomis@gmail.com> | 2013-06-09 16:14:12 -0400 |
---|---|---|
committer | Chris Ball <cjb@laptop.org> | 2013-06-27 10:22:50 -0400 |
commit | 2c9054dc102742e1683b5d879f7472fb712b7324 (patch) | |
tree | 1bee12f61653f12896ba56351db67839c6610814 /drivers/mmc | |
parent | ec0a7517dc25b4cca8a694fd61e09771bffba022 (diff) |
mmc: sh_mmcif: handle mmc_of_parse() errors during probe
Signed-off-by: Simon Baatz <gmbnomis@gmail.com>
Acked-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'drivers/mmc')
-rw-r--r-- | drivers/mmc/host/sh_mmcif.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/mmc/host/sh_mmcif.c b/drivers/mmc/host/sh_mmcif.c index 8ef5efad45d0..6706b5e3b974 100644 --- a/drivers/mmc/host/sh_mmcif.c +++ b/drivers/mmc/host/sh_mmcif.c | |||
@@ -1370,7 +1370,11 @@ static int sh_mmcif_probe(struct platform_device *pdev) | |||
1370 | ret = -ENOMEM; | 1370 | ret = -ENOMEM; |
1371 | goto ealloch; | 1371 | goto ealloch; |
1372 | } | 1372 | } |
1373 | mmc_of_parse(mmc); | 1373 | |
1374 | ret = mmc_of_parse(mmc); | ||
1375 | if (ret < 0) | ||
1376 | goto eofparse; | ||
1377 | |||
1374 | host = mmc_priv(mmc); | 1378 | host = mmc_priv(mmc); |
1375 | host->mmc = mmc; | 1379 | host->mmc = mmc; |
1376 | host->addr = reg; | 1380 | host->addr = reg; |
@@ -1465,6 +1469,7 @@ eclkupdate: | |||
1465 | clk_put(host->hclk); | 1469 | clk_put(host->hclk); |
1466 | eclkget: | 1470 | eclkget: |
1467 | pm_runtime_disable(&pdev->dev); | 1471 | pm_runtime_disable(&pdev->dev); |
1472 | eofparse: | ||
1468 | mmc_free_host(mmc); | 1473 | mmc_free_host(mmc); |
1469 | ealloch: | 1474 | ealloch: |
1470 | iounmap(reg); | 1475 | iounmap(reg); |