dect
/
linux-2.6
Archived
13
0
Fork 0

[ARM] omap: MMC: provide a dummy ick for OMAP1

Eliminate the OMAP1 vs OMAP2 clock knowledge in the MMC driver.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
Russell King 2009-01-23 19:03:37 +00:00 committed by Russell King
parent 5c9e02b1ab
commit d4a36645a1
2 changed files with 10 additions and 11 deletions

View File

@ -125,7 +125,9 @@ static struct omap_clk omap_clks[] = {
CLK(NULL, "bclk", &bclk_1510, CK_1510 | CK_310), CLK(NULL, "bclk", &bclk_1510, CK_1510 | CK_310),
CLK(NULL, "bclk", &bclk_16xx, CK_16XX), CLK(NULL, "bclk", &bclk_16xx, CK_16XX),
CLK("mmci-omap.0", "fck", &mmc1_ck, CK_16XX | CK_1510 | CK_310), CLK("mmci-omap.0", "fck", &mmc1_ck, CK_16XX | CK_1510 | CK_310),
CLK("mmci-omap.0", "ick", &armper_ck.clk, CK_16XX | CK_1510 | CK_310),
CLK("mmci-omap.1", "fck", &mmc2_ck, CK_16XX), CLK("mmci-omap.1", "fck", &mmc2_ck, CK_16XX),
CLK("mmci-omap.1", "ick", &armper_ck.clk, CK_16XX),
/* Virtual clocks */ /* Virtual clocks */
CLK(NULL, "mpu", &virtual_ck_mpu, CK_16XX | CK_1510 | CK_310), CLK(NULL, "mpu", &virtual_ck_mpu, CK_16XX | CK_1510 | CK_310),
CLK("i2c_omap.1", "i2c_fck", &i2c_fck, CK_16XX | CK_1510 | CK_310), CLK("i2c_omap.1", "i2c_fck", &i2c_fck, CK_16XX | CK_1510 | CK_310),

View File

@ -1460,15 +1460,12 @@ static int __init mmc_omap_probe(struct platform_device *pdev)
if (!host->virt_base) if (!host->virt_base)
goto err_ioremap; goto err_ioremap;
if (cpu_is_omap24xx()) { host->iclk = clk_get(&pdev->dev, "ick");
host->iclk = clk_get(&pdev->dev, "ick"); if (IS_ERR(host->iclk))
if (IS_ERR(host->iclk)) goto err_free_mmc_host;
goto err_free_mmc_host; clk_enable(host->iclk);
clk_enable(host->iclk);
}
host->fclk = clk_get(&pdev->dev, "fck"); host->fclk = clk_get(&pdev->dev, "fck");
if (IS_ERR(host->fclk)) { if (IS_ERR(host->fclk)) {
ret = PTR_ERR(host->fclk); ret = PTR_ERR(host->fclk);
goto err_free_iclk; goto err_free_iclk;
@ -1533,10 +1530,10 @@ static int mmc_omap_remove(struct platform_device *pdev)
if (host->pdata->cleanup) if (host->pdata->cleanup)
host->pdata->cleanup(&pdev->dev); host->pdata->cleanup(&pdev->dev);
if (host->iclk && !IS_ERR(host->iclk)) mmc_omap_fclk_enable(host, 0);
clk_put(host->iclk); clk_put(host->fclk);
if (host->fclk && !IS_ERR(host->fclk)) clk_disable(host->iclk);
clk_put(host->fclk); clk_put(host->iclk);
iounmap(host->virt_base); iounmap(host->virt_base);
release_mem_region(pdev->resource[0].start, release_mem_region(pdev->resource[0].start,