[v4, 04/11] mmc: fsl_esdhc: clean TBCTL[TB_EN] manually during init

Yangbo Lu
2020-09-01T08:58:02Z

Clean TBCTL[TB_EN] manually during init since it is not able to
be reset by reset all operation.

Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com>
---
Changes for v2:
- None.
Changes for v3:
- None.
Changes for v4:
- None.
---
drivers/mmc/fsl_esdhc.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c
index 4e04c10..e7db55d 100644
--- a/drivers/mmc/fsl_esdhc.c
+++ b/drivers/mmc/fsl_esdhc.c
@@ -637,6 +637,9 @@ static int esdhc_init_common(struct fsl_esdhc_priv *priv, struct mmc *mmc)
return -ETIMEDOUT;
}

+ /* Clean TBCTL[TB_EN] which is not able to be reset by reset all */
+ esdhc_clrbits32(&regs->tbctl, TBCTL_TB_EN);
+
esdhc_enable_cache_snooping(regs);

esdhc_setbits32(&regs->sysctl, SYSCTL_HCKEN | SYSCTL_IPGEN);
--
2.7.4