Browse Source

mmc: sdhci-of-esdhc: Handle error from mmc_of_parse()

Since mmc_of_parse() may fail, let's deal with it and thus do proper
error handling.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
Ulf Hansson 10 years ago
parent
commit
f0991408ae
1 changed files with 8 additions and 2 deletions
  1. 8 2
      drivers/mmc/host/sdhci-of-esdhc.c

+ 8 - 2
drivers/mmc/host/sdhci-of-esdhc.c

@@ -370,13 +370,19 @@ static int sdhci_esdhc_probe(struct platform_device *pdev)
 	}
 	}
 
 
 	/* call to generic mmc_of_parse to support additional capabilities */
 	/* call to generic mmc_of_parse to support additional capabilities */
-	mmc_of_parse(host->mmc);
+	ret = mmc_of_parse(host->mmc);
+	if (ret)
+		goto err;
+
 	mmc_of_parse_voltage(np, &host->ocr_mask);
 	mmc_of_parse_voltage(np, &host->ocr_mask);
 
 
 	ret = sdhci_add_host(host);
 	ret = sdhci_add_host(host);
 	if (ret)
 	if (ret)
-		sdhci_pltfm_free(pdev);
+		goto err;
 
 
+	return 0;
+ err:
+	sdhci_pltfm_free(pdev);
 	return ret;
 	return ret;
 }
 }