summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLucas Stach <l.stach@pengutronix.de>2019-10-29 11:42:35 +0000
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-12-31 16:35:37 +0100
commitf8aae26fa638c6bc2ef08a536028d6d29f14a66e (patch)
tree2e4db8080aaec26833311fff0c8d69b76e7b3346
parent0613a3b92923a08d0b0db0d4b830f71dc7325ed5 (diff)
downloadlinux-stable-f8aae26fa638c6bc2ef08a536028d6d29f14a66e.tar.gz
linux-stable-f8aae26fa638c6bc2ef08a536028d6d29f14a66e.tar.bz2
linux-stable-f8aae26fa638c6bc2ef08a536028d6d29f14a66e.zip
nvmem: imx-ocotp: reset error status on probe
[ Upstream commit c33c585f1b3a99d53920bdac614aca461d8db06f ] If software running before the OCOTP driver is loaded left the controller with the error status pending, the driver will never be able to complete the read timing setup. Reset the error status on probe to make sure the controller is in usable state. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org> Link: https://lore.kernel.org/r/20191029114240.14905-6-srinivas.kandagatla@linaro.org Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/nvmem/imx-ocotp.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/nvmem/imx-ocotp.c b/drivers/nvmem/imx-ocotp.c
index afb429a417fe..926d9cc080cf 100644
--- a/drivers/nvmem/imx-ocotp.c
+++ b/drivers/nvmem/imx-ocotp.c
@@ -466,6 +466,10 @@ static int imx_ocotp_probe(struct platform_device *pdev)
if (IS_ERR(priv->clk))
return PTR_ERR(priv->clk);
+ clk_prepare_enable(priv->clk);
+ imx_ocotp_clr_err_if_set(priv->base);
+ clk_disable_unprepare(priv->clk);
+
priv->params = of_device_get_match_data(&pdev->dev);
imx_ocotp_nvmem_config.size = 4 * priv->params->nregs;
imx_ocotp_nvmem_config.dev = dev;