diff options
author | Simon Baatz <gmbnomis@gmail.com> | 2013-06-09 16:14:15 -0400 |
---|---|---|
committer | Chris Ball <cjb@laptop.org> | 2013-06-27 10:23:11 -0400 |
commit | d2cf6071cc09337eb68d960bcba94d2998de6172 (patch) | |
tree | 903884a85aeadb11e252a7eb0724c1e636c812d5 /drivers/mmc/host | |
parent | b88576965b9518018c604865212294719ca2744f (diff) |
mmc: sdhci-pxav3: handle mmc_of_parse() errors during probe
Signed-off-by: Simon Baatz <gmbnomis@gmail.com>
Signed-off-by: Chris Ball <cjb@laptop.org>
Diffstat (limited to 'drivers/mmc/host')
-rw-r--r-- | drivers/mmc/host/sdhci-pxav3.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/mmc/host/sdhci-pxav3.c b/drivers/mmc/host/sdhci-pxav3.c index 56d9bee93d8f..d29f81097334 100644 --- a/drivers/mmc/host/sdhci-pxav3.c +++ b/drivers/mmc/host/sdhci-pxav3.c | |||
@@ -252,7 +252,9 @@ static int sdhci_pxav3_probe(struct platform_device *pdev) | |||
252 | 252 | ||
253 | match = of_match_device(of_match_ptr(sdhci_pxav3_of_match), &pdev->dev); | 253 | match = of_match_device(of_match_ptr(sdhci_pxav3_of_match), &pdev->dev); |
254 | if (match) { | 254 | if (match) { |
255 | mmc_of_parse(host->mmc); | 255 | ret = mmc_of_parse(host->mmc); |
256 | if (ret) | ||
257 | goto err_of_parse; | ||
256 | sdhci_get_of_property(pdev); | 258 | sdhci_get_of_property(pdev); |
257 | pdata = pxav3_get_mmc_pdata(dev); | 259 | pdata = pxav3_get_mmc_pdata(dev); |
258 | } else if (pdata) { | 260 | } else if (pdata) { |
@@ -313,10 +315,11 @@ static int sdhci_pxav3_probe(struct platform_device *pdev) | |||
313 | 315 | ||
314 | return 0; | 316 | return 0; |
315 | 317 | ||
318 | err_of_parse: | ||
319 | err_cd_req: | ||
316 | err_add_host: | 320 | err_add_host: |
317 | clk_disable_unprepare(clk); | 321 | clk_disable_unprepare(clk); |
318 | clk_put(clk); | 322 | clk_put(clk); |
319 | err_cd_req: | ||
320 | err_clk_get: | 323 | err_clk_get: |
321 | sdhci_pltfm_free(pdev); | 324 | sdhci_pltfm_free(pdev); |
322 | kfree(pxa); | 325 | kfree(pxa); |