提交 ebbe6f88 编写于 作者: T Tony Lindgren 提交者: Chris Ball

mmc: omap: Fix broken reg_shift initialization

Commit fa550189 (mmc: core: Prevent eMMC VCC supply to be cut from late init)
slightly affected timings for how things are done for the omap MMC driver
causing the MMC cards not getting detected any longer.

Turns out this was caused by buggy reg_shift initialization in the omap
MMC driver that was happening after mmc_add_host() was being called.

Fix this by initializing reg_shift before mmc_add_host() is called.
Signed-off-by: NTony Lindgren <tony@atomide.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: NChris Ball <cjb@laptop.org>
上级 3caf4140
...@@ -1485,6 +1485,7 @@ static int __devinit mmc_omap_probe(struct platform_device *pdev) ...@@ -1485,6 +1485,7 @@ static int __devinit mmc_omap_probe(struct platform_device *pdev)
} }
host->nr_slots = pdata->nr_slots; host->nr_slots = pdata->nr_slots;
host->reg_shift = (cpu_is_omap7xx() ? 1 : 2);
host->mmc_omap_wq = alloc_workqueue("mmc_omap", 0, 0); host->mmc_omap_wq = alloc_workqueue("mmc_omap", 0, 0);
if (!host->mmc_omap_wq) if (!host->mmc_omap_wq)
...@@ -1500,8 +1501,6 @@ static int __devinit mmc_omap_probe(struct platform_device *pdev) ...@@ -1500,8 +1501,6 @@ static int __devinit mmc_omap_probe(struct platform_device *pdev)
} }
} }
host->reg_shift = (cpu_is_omap7xx() ? 1 : 2);
return 0; return 0;
err_destroy_wq: err_destroy_wq:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册