Commit 7a7eb983 authored by Nobuhiro Iwamatsu's avatar Nobuhiro Iwamatsu Committed by Nobuhiro Iwamatsu

mmc: sh_mmcif: Change maximum and minimum value of MMC clock

Maximum value and the minimum value of clock for sh_mmcif instead by
base of MMC clock. This removes fixed clock, make the changes to be calculated
according to environment.
Signed-off-by: default avatarNobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Signed-off-by: default avatarNobuhiro Iwamatsu <iwamatsu@nigauri.org>
parent 21ea3503
......@@ -579,8 +579,6 @@ static struct mmc_config sh_mmcif_cfg = {
.host_caps = MMC_MODE_HS | MMC_MODE_HS_52MHz | MMC_MODE_4BIT |
MMC_MODE_8BIT | MMC_MODE_HC,
.voltages = MMC_VDD_32_33 | MMC_VDD_33_34,
.f_min = CLKDEV_MMC_INIT,
.f_max = CLKDEV_EMMC_DATA,
.b_max = CONFIG_SYS_MMC_MAX_BLK_COUNT,
};
......@@ -597,6 +595,9 @@ int mmcif_mmc_init(void)
host->regs = (struct sh_mmcif_regs *)CONFIG_SH_MMCIF_ADDR;
host->clk = CONFIG_SH_MMCIF_CLK;
sh_mmcif_cfg.f_min = MMC_CLK_DIV_MIN(host->clk);
sh_mmcif_cfg.f_max = MMC_CLK_DIV_MAX;
mmc = mmc_create(&sh_mmcif_cfg, host);
if (mmc == NULL) {
free(host);
......
......@@ -199,7 +199,8 @@ struct sh_mmcif_regs {
#define SOFT_RST_OFF (0 << 31)
#define CLKDEV_EMMC_DATA 52000000 /* 52MHz */
#define CLKDEV_MMC_INIT 400000 /* 100 - 400 KHz */
#define MMC_CLK_DIV_MIN(clk) (clk / (1 << 8))
#define MMC_CLK_DIV_MAX CLKDEV_EMMC_DATA
#define MMC_BUS_WIDTH_1 0
#define MMC_BUS_WIDTH_4 2
......
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