Commit 164378ef authored by Chao Xie's avatar Chao Xie Committed by Chris Ball

mmc: sdhci-pxav2, sdhci-pxav3: use clk_prepare/unprepare APIs

Prepare the clock before enabling it.
Signed-off-by: default avatarChao Xie <xiechao.mail@gmail.com>
Signed-off-by: default avatarChris Ball <cjb@laptop.org>
parent e919fd20
...@@ -197,7 +197,7 @@ static int __devinit sdhci_pxav2_probe(struct platform_device *pdev) ...@@ -197,7 +197,7 @@ static int __devinit sdhci_pxav2_probe(struct platform_device *pdev)
goto err_clk_get; goto err_clk_get;
} }
pltfm_host->clk = clk; pltfm_host->clk = clk;
clk_enable(clk); clk_prepare_enable(clk);
host->quirks = SDHCI_QUIRK_BROKEN_ADMA host->quirks = SDHCI_QUIRK_BROKEN_ADMA
| SDHCI_QUIRK_BROKEN_TIMEOUT_VAL | SDHCI_QUIRK_BROKEN_TIMEOUT_VAL
...@@ -239,7 +239,7 @@ static int __devinit sdhci_pxav2_probe(struct platform_device *pdev) ...@@ -239,7 +239,7 @@ static int __devinit sdhci_pxav2_probe(struct platform_device *pdev)
return 0; return 0;
err_add_host: err_add_host:
clk_disable(clk); clk_disable_unprepare(clk);
clk_put(clk); clk_put(clk);
err_clk_get: err_clk_get:
sdhci_pltfm_free(pdev); sdhci_pltfm_free(pdev);
...@@ -255,7 +255,7 @@ static int __devexit sdhci_pxav2_remove(struct platform_device *pdev) ...@@ -255,7 +255,7 @@ static int __devexit sdhci_pxav2_remove(struct platform_device *pdev)
sdhci_remove_host(host, 1); sdhci_remove_host(host, 1);
clk_disable(pltfm_host->clk); clk_disable_unprepare(pltfm_host->clk);
clk_put(pltfm_host->clk); clk_put(pltfm_host->clk);
sdhci_pltfm_free(pdev); sdhci_pltfm_free(pdev);
kfree(pxa); kfree(pxa);
......
...@@ -231,14 +231,14 @@ static int __devinit sdhci_pxav3_probe(struct platform_device *pdev) ...@@ -231,14 +231,14 @@ static int __devinit sdhci_pxav3_probe(struct platform_device *pdev)
pltfm_host = sdhci_priv(host); pltfm_host = sdhci_priv(host);
pltfm_host->priv = pxa; pltfm_host->priv = pxa;
clk = clk_get(dev, "PXA-SDHCLK"); clk = clk_get(dev, NULL);
if (IS_ERR(clk)) { if (IS_ERR(clk)) {
dev_err(dev, "failed to get io clock\n"); dev_err(dev, "failed to get io clock\n");
ret = PTR_ERR(clk); ret = PTR_ERR(clk);
goto err_clk_get; goto err_clk_get;
} }
pltfm_host->clk = clk; pltfm_host->clk = clk;
clk_enable(clk); clk_prepare_enable(clk);
host->quirks = SDHCI_QUIRK_BROKEN_TIMEOUT_VAL host->quirks = SDHCI_QUIRK_BROKEN_TIMEOUT_VAL
| SDHCI_QUIRK_NO_ENDATTR_IN_NOPDESC | SDHCI_QUIRK_NO_ENDATTR_IN_NOPDESC
...@@ -283,7 +283,7 @@ static int __devinit sdhci_pxav3_probe(struct platform_device *pdev) ...@@ -283,7 +283,7 @@ static int __devinit sdhci_pxav3_probe(struct platform_device *pdev)
return 0; return 0;
err_add_host: err_add_host:
clk_disable(clk); clk_disable_unprepare(clk);
clk_put(clk); clk_put(clk);
err_clk_get: err_clk_get:
sdhci_pltfm_free(pdev); sdhci_pltfm_free(pdev);
...@@ -299,7 +299,7 @@ static int __devexit sdhci_pxav3_remove(struct platform_device *pdev) ...@@ -299,7 +299,7 @@ static int __devexit sdhci_pxav3_remove(struct platform_device *pdev)
sdhci_remove_host(host, 1); sdhci_remove_host(host, 1);
clk_disable(pltfm_host->clk); clk_disable_unprepare(pltfm_host->clk);
clk_put(pltfm_host->clk); clk_put(pltfm_host->clk);
sdhci_pltfm_free(pdev); sdhci_pltfm_free(pdev);
kfree(pxa); kfree(pxa);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment