mmc: sdhci-spear: Simplify by adding build dependency to CONFIG_OF

This driver is used on SoCs which are using CONFIG_OF. By adding a
compile dependency in the Kconfig, it enables us to simplify some code.

Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
This commit is contained in:
Ulf Hansson 2015-03-04 14:57:44 +01:00
Родитель 83f13cc9af
Коммит bbd7f0a20f
2 изменённых файлов: 5 добавлений и 16 удалений

Просмотреть файл

@ -255,6 +255,7 @@ config MMC_SDHCI_PXAV2
config MMC_SDHCI_SPEAR config MMC_SDHCI_SPEAR
tristate "SDHCI support on ST SPEAr platform" tristate "SDHCI support on ST SPEAr platform"
depends on MMC_SDHCI && PLAT_SPEAR depends on MMC_SDHCI && PLAT_SPEAR
depends on OF
help help
This selects the Secure Digital Host Controller Interface (SDHCI) This selects the Secure Digital Host Controller Interface (SDHCI)
often referrered to as the HSMMC block in some of the ST SPEAR range often referrered to as the HSMMC block in some of the ST SPEAR range

Просмотреть файл

@ -44,7 +44,6 @@ static const struct sdhci_ops sdhci_pltfm_ops = {
.set_uhs_signaling = sdhci_set_uhs_signaling, .set_uhs_signaling = sdhci_set_uhs_signaling,
}; };
#ifdef CONFIG_OF
static struct sdhci_plat_data *sdhci_probe_config_dt(struct platform_device *pdev) static struct sdhci_plat_data *sdhci_probe_config_dt(struct platform_device *pdev)
{ {
struct device_node *np = pdev->dev.of_node; struct device_node *np = pdev->dev.of_node;
@ -66,16 +65,9 @@ static struct sdhci_plat_data *sdhci_probe_config_dt(struct platform_device *pde
return pdata; return pdata;
} }
#else
static struct sdhci_plat_data *sdhci_probe_config_dt(struct platform_device *pdev)
{
return ERR_PTR(-ENOSYS);
}
#endif
static int sdhci_probe(struct platform_device *pdev) static int sdhci_probe(struct platform_device *pdev)
{ {
struct device_node *np = pdev->dev.of_node;
struct sdhci_host *host; struct sdhci_host *host;
struct resource *iomem; struct resource *iomem;
struct spear_sdhci *sdhci; struct spear_sdhci *sdhci;
@ -124,14 +116,10 @@ static int sdhci_probe(struct platform_device *pdev)
dev_dbg(&pdev->dev, "Error setting desired clk, clk=%lu\n", dev_dbg(&pdev->dev, "Error setting desired clk, clk=%lu\n",
clk_get_rate(sdhci->clk)); clk_get_rate(sdhci->clk));
if (np) { sdhci->data = sdhci_probe_config_dt(pdev);
sdhci->data = sdhci_probe_config_dt(pdev); if (IS_ERR(sdhci->data)) {
if (IS_ERR(sdhci->data)) { dev_err(&pdev->dev, "DT: Failed to get pdata\n");
dev_err(&pdev->dev, "DT: Failed to get pdata\n"); goto disable_clk;
goto disable_clk;
}
} else {
sdhci->data = dev_get_platdata(&pdev->dev);
} }
/* /*