mmc: sdhci-esdhc-imx: support real clock on and off for imx6q
authorDong Aisheng <b29396@freescale.com>
Fri, 13 Sep 2013 11:11:33 +0000 (19:11 +0800)
committerChris Ball <cjb@laptop.org>
Thu, 26 Sep 2013 11:57:21 +0000 (07:57 -0400)
commitfed2f6e2d42e4bcdec5ea357e7a9db8602744753
tree8477f64b02abcccfe5684ff26f645531bce790e8
parentd31fc00a71b4f3a52d23c5a995ccd63e50a2c877
mmc: sdhci-esdhc-imx: support real clock on and off for imx6q

The signal voltage switch flow requires to shutdown and output
clock in a specific sequence according to standard host controller
v3.0 spec. In that timing, the card must really receive clock or not.

However, for i.MX6Q, the uSDHC will not output clock even the clock
is enabled until there is command or data in transfer on the bus,
which will then cause singal voltage switch always to fail.

For i.MX6Q, we clear ESDHC_VENDOR_SPEC_FRC_SDCLK_ON bit to let
controller to gate off clock automatically and set that bit
to force clock output if clock is on.

This is required by SD3.0 support.

Signed-off-by: Dong Aisheng <b29396@freescale.com>
Acked-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Chris Ball <cjb@laptop.org>
drivers/mmc/host/sdhci-esdhc-imx.c