diff options
-rw-r--r-- | drivers/mmc/dw_mmc.c | 13 | ||||
-rw-r--r-- | drivers/mmc/exynos_dw_mmc.c | 3 | ||||
-rw-r--r-- | drivers/mmc/rockchip_dw_mmc.c | 3 | ||||
-rw-r--r-- | drivers/mmc/socfpga_dw_mmc.c | 3 | ||||
-rw-r--r-- | include/dwmmc.h | 8 |
5 files changed, 12 insertions, 18 deletions
diff --git a/drivers/mmc/dw_mmc.c b/drivers/mmc/dw_mmc.c index 074f86c..d6ac46c 100644 --- a/drivers/mmc/dw_mmc.c +++ b/drivers/mmc/dw_mmc.c @@ -488,10 +488,10 @@ static const struct mmc_ops dwmci_ops = { }; #endif -void dwmci_setup_cfg(struct mmc_config *cfg, const char *name, int buswidth, - uint caps, u32 max_clk, u32 min_clk) +void dwmci_setup_cfg(struct mmc_config *cfg, struct dwmci_host *host, + u32 max_clk, u32 min_clk) { - cfg->name = name; + cfg->name = host->name; #ifndef CONFIG_DM_MMC_OPS cfg->ops = &dwmci_ops; #endif @@ -500,9 +500,9 @@ void dwmci_setup_cfg(struct mmc_config *cfg, const char *name, int buswidth, cfg->voltages = MMC_VDD_32_33 | MMC_VDD_33_34 | MMC_VDD_165_195; - cfg->host_caps = caps; + cfg->host_caps = host->caps; - if (buswidth == 8) { + if (host->buswidth == 8) { cfg->host_caps |= MMC_MODE_8BIT; cfg->host_caps &= ~MMC_MODE_4BIT; } else { @@ -522,8 +522,7 @@ int dwmci_bind(struct udevice *dev, struct mmc *mmc, struct mmc_config *cfg) #else int add_dwmci(struct dwmci_host *host, u32 max_clk, u32 min_clk) { - dwmci_setup_cfg(&host->cfg, host->name, host->buswidth, host->caps, - max_clk, min_clk); + dwmci_setup_cfg(&host->cfg, host, max_clk, min_clk); host->mmc = mmc_create(&host->cfg, host); if (host->mmc == NULL) diff --git a/drivers/mmc/exynos_dw_mmc.c b/drivers/mmc/exynos_dw_mmc.c index 568fed7..c440399 100644 --- a/drivers/mmc/exynos_dw_mmc.c +++ b/drivers/mmc/exynos_dw_mmc.c @@ -271,8 +271,7 @@ static int exynos_dwmmc_probe(struct udevice *dev) if (err) return err; - dwmci_setup_cfg(&plat->cfg, host->name, host->buswidth, host->caps, - DWMMC_MAX_FREQ, DWMMC_MIN_FREQ); + dwmci_setup_cfg(&plat->cfg, host, DWMMC_MAX_FREQ, DWMMC_MIN_FREQ); host->mmc = &plat->mmc; host->mmc->priv = &priv->host; host->priv = dev; diff --git a/drivers/mmc/rockchip_dw_mmc.c b/drivers/mmc/rockchip_dw_mmc.c index 859760b..47db678 100644 --- a/drivers/mmc/rockchip_dw_mmc.c +++ b/drivers/mmc/rockchip_dw_mmc.c @@ -129,8 +129,7 @@ static int rockchip_dwmmc_probe(struct udevice *dev) return ret; } #endif - dwmci_setup_cfg(&plat->cfg, dev->name, host->buswidth, host->caps, - priv->minmax[1], priv->minmax[0]); + dwmci_setup_cfg(&plat->cfg, host, priv->minmax[1], priv->minmax[0]); host->mmc = &plat->mmc; host->mmc->priv = &priv->host; host->mmc->dev = dev; diff --git a/drivers/mmc/socfpga_dw_mmc.c b/drivers/mmc/socfpga_dw_mmc.c index 8a96302..5a3a4ff 100644 --- a/drivers/mmc/socfpga_dw_mmc.c +++ b/drivers/mmc/socfpga_dw_mmc.c @@ -111,8 +111,7 @@ static int socfpga_dwmmc_probe(struct udevice *dev) struct dwmci_host *host = &priv->host; #ifdef CONFIG_BLK - dwmci_setup_cfg(&plat->cfg, dev->name, host->buswidth, host->caps, - host->bus_hz, 400000); + dwmci_setup_cfg(&plat->cfg, host, host->bus_hz, 400000); host->mmc = &plat->mmc; #else int ret; diff --git a/include/dwmmc.h b/include/dwmmc.h index 5b9602c..4dda009 100644 --- a/include/dwmmc.h +++ b/include/dwmmc.h @@ -253,14 +253,12 @@ static inline u8 dwmci_readb(struct dwmci_host *host, int reg) * See rockchip_dw_mmc.c for an example. * * @cfg: Configuration structure to fill in (generally &plat->mmc) - * @name: Device name (normally dev->name) - * @buswidth: Bus width (in bits, such as 4 or 8) - * @caps: Host capabilities (MMC_MODE_...) + * @host: DWMMC host * @max_clk: Maximum supported clock speed in HZ (e.g. 150000000) * @min_clk: Minimum supported clock speed in HZ (e.g. 400000) */ -void dwmci_setup_cfg(struct mmc_config *cfg, const char *name, int buswidth, - uint caps, u32 max_clk, u32 min_clk); +void dwmci_setup_cfg(struct mmc_config *cfg, struct dwmci_host *host, + u32 max_clk, u32 min_clk); /** * dwmci_bind() - Set up a new MMC block device |