summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHan Xu <han.xu@nxp.com>2017-08-11 14:48:25 -0500
committerHan Xu <han.xu@nxp.com>2017-08-13 23:16:06 -0500
commit0f60b5f3c7d5db5d481bf66c4136486334e5a4ed (patch)
treee9c19a3fba9729fc03b97b194acd5691f6a1308e
parentd622cd0a6c7cd589c42e584c4b2ea1a2a71076aa (diff)
MLK-16186: spi: flexspi: reset the flexspi DLL register to default value
i.MX8QM ROM didn't calculate the DLL correctly in some cases, to avoid the wrong DLL setting impact the following functions, reset them to the default value when probe. Signed-off-by: Han Xu <han.xu@nxp.com>
-rw-r--r--drivers/spi/fsl_fspi.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/spi/fsl_fspi.c b/drivers/spi/fsl_fspi.c
index 19bb68e3011..b7b2d92338c 100644
--- a/drivers/spi/fsl_fspi.c
+++ b/drivers/spi/fsl_fspi.c
@@ -1186,6 +1186,10 @@ static int fsl_fspi_probe(struct udevice *bus)
fspi_write32(priv->flags, &priv->regs->mcr0,
0xFFFF0000);
+ /* Reset the DLL register to default value */
+ fspi_write32(priv->flags, &priv->regs->dllacr, 0x0100);
+ fspi_write32(priv->flags, &priv->regs->dllbcr, 0x0100);
+
/* Flash Size in KByte */
total_size = FSL_FSPI_FLASH_SIZE * FSL_FSPI_FLASH_NUM >> 10;