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:
Родитель
83f13cc9af
Коммит
bbd7f0a20f
|
@ -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);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Загрузка…
Ссылка в новой задаче