mmc: fsl_esdhc: clean TBCTL[TB_EN] manually during init
authorYangbo Lu <yangbo.lu@nxp.com>
Tue, 1 Sep 2020 08:58:02 +0000 (16:58 +0800)
committerPeng Fan <peng.fan@nxp.com>
Mon, 12 Oct 2020 07:46:30 +0000 (15:46 +0800)
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>
drivers/mmc/fsl_esdhc.c

index 4e04c10..e7db55d 100644 (file)
@@ -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);