
Dear Minkyu,
Please refer to the latest version of emmc patchset, which is V7 patchset.
The function definition 'exynos_dwmci_init()' has been changed when compared to V1 patchset.
Here is the URL for latest version. http://www.mail-archive.com/u-boot@lists.denx.de/msg107511.html
Thanks & Regards Amarendra
On 27 March 2013 10:44, Minkyu Kang mk7.kang@samsung.com wrote:
Dear Amar,
On 05/12/12 22:31, Amar wrote:
This patch defines the call back required by dw mmc driver to get the clock value. It also adds function to set the dw mmc clock divider ratio.
Signed-off-by: Amarendra Reddy amarendra.xt@samsung.com
drivers/mmc/exynos_dw_mmc.c | 14 +++++++++++++- 1 files changed, 13 insertions(+), 1 deletions(-)
diff --git a/drivers/mmc/exynos_dw_mmc.c b/drivers/mmc/exynos_dw_mmc.c index 72a31b7..7cc8aba 100644 --- a/drivers/mmc/exynos_dw_mmc.c +++ b/drivers/mmc/exynos_dw_mmc.c @@ -30,25 +30,37 @@ static void exynos_dwmci_clksel(struct dwmci_host
*host)
{ u32 val; val = DWMCI_SET_SAMPLE_CLK(DWMCI_SHIFT_0) |
DWMCI_SET_DRV_CLK(DWMCI_SHIFT_0) | DWMCI_SET_DIV_RATIO(0);
DWMCI_SET_DRV_CLK(DWMCI_SHIFT_0) |
DWMCI_SET_DIV_RATIO(DWMCI_SHIFT_0); dwmci_writel(host, DWMCI_CLKSEL, val);
}
+unsigned int exynos_dwmci_get_clk(int dev_index) +{
return get_mmc_clk(dev_index);
+}
int exynos_dwmci_init(u32 regbase, int bus_width, int index) { struct dwmci_host *host = NULL;
int div = 0;
please add a blank line here.
host = malloc(sizeof(struct dwmci_host)); if (!host) { printf("dwmci_host malloc fail!\n"); return 1; }
div = 1;
ditto.
/* Set the mmc clock divider ratio & pre-ratio */
set_mmc_clk(index, div);
If the div is constant value, then just put 1. I think.. it's better. set_mmc_clk(index, 1);
host->name = EXYNOS_NAME; host->ioaddr = (void *)regbase; host->buswidth = bus_width; host->clksel = exynos_dwmci_clksel; host->dev_index = index;
host->mmc_clk = exynos_dwmci_get_clk; add_dwmci(host, 52000000, 400000);
Thanks, Minkyu Kang.
U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot