mmc: omap_hsmmc: allow mmc clock to be gated

mmc core has defined a new parameter *clk_disable* to gate the clock.
Disable the clock here if *clk_disable* is set.

Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
Signed-off-by: Jean-Jacques Hiblot <jjhiblot@ti.com>
master
Kishon Vijay Abraham I 6 years ago committed by Jaehoon Chung
parent 42182c9b9c
commit 90321dce0d
  1. 6
      drivers/mmc/omap_hsmmc.c

@ -1207,6 +1207,7 @@ static int omap_hsmmc_set_ios(struct udevice *dev)
struct mmc_uclass_priv *upriv = dev_get_uclass_priv(dev);
struct mmc *mmc = upriv->mmc;
#endif
struct hsmmc *mmc_base = priv->base_addr;
if (priv->bus_width != mmc->bus_width)
omap_hsmmc_set_bus_width(mmc);
@ -1214,6 +1215,11 @@ static int omap_hsmmc_set_ios(struct udevice *dev)
if (priv->clock != mmc->clock)
omap_hsmmc_set_clock(mmc);
if (mmc->clk_disable)
omap_hsmmc_stop_clock(mmc_base);
else
omap_hsmmc_start_clock(mmc_base);
#if CONFIG_IS_ENABLED(DM_MMC)
if (priv->mode != mmc->selected_mode)
omap_hsmmc_set_timing(mmc);

Loading…
Cancel
Save