Commit 7f8e446b authored by Markus Elfring's avatar Markus Elfring Committed by Ulf Hansson
Browse files

mmc: tmio: Use common error handling code in tmio_mmc_host_probe()



* Add a jump target so that a bit of exception handling can be better
  reused at the end of this function.

* Adjust condition checks.

This issue was detected by using the Coccinelle software.

Signed-off-by: default avatarMarkus Elfring <elfring@users.sourceforge.net>
Signed-off-by: default avatarUlf Hansson <ulf.hansson@linaro.org>
parent 2ee4f620
Loading
Loading
Loading
Loading
+9 −8
Original line number Diff line number Diff line
@@ -1302,23 +1302,24 @@ int tmio_mmc_host_probe(struct tmio_mmc_host *_host,
	pm_runtime_enable(&pdev->dev);

	ret = mmc_add_host(mmc);
	if (ret < 0) {
		tmio_mmc_host_remove(_host);
		return ret;
	}
	if (ret)
		goto remove_host;

	dev_pm_qos_expose_latency_limit(&pdev->dev, 100);

	if (pdata->flags & TMIO_MMC_USE_GPIO_CD) {
		ret = mmc_gpio_request_cd(mmc, pdata->cd_gpio, 0);
		if (ret < 0) {
			tmio_mmc_host_remove(_host);
			return ret;
		}
		if (ret)
			goto remove_host;

		mmc_gpiod_request_cd_irq(mmc);
	}

	return 0;

remove_host:
	tmio_mmc_host_remove(_host);
	return ret;
}
EXPORT_SYMBOL_GPL(tmio_mmc_host_probe);