]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/4.19.45/crypto-ccree-pm-resume-first-enable-the-source-clk.patch
drop queue-4.14/mips-make-sure-dt-memory-regions-are-valid.patch
[thirdparty/kernel/stable-queue.git] / releases / 4.19.45 / crypto-ccree-pm-resume-first-enable-the-source-clk.patch
1 From 7766dd774d80463cec7b81d90c8672af91de2da1 Mon Sep 17 00:00:00 2001
2 From: Ofir Drang <ofir.drang@arm.com>
3 Date: Thu, 18 Apr 2019 16:39:06 +0300
4 Subject: crypto: ccree - pm resume first enable the source clk
5
6 From: Ofir Drang <ofir.drang@arm.com>
7
8 commit 7766dd774d80463cec7b81d90c8672af91de2da1 upstream.
9
10 On power management resume function first enable the device clk source
11 to allow access to the device registers.
12
13 Signed-off-by: Ofir Drang <ofir.drang@arm.com>
14 Signed-off-by: Gilad Ben-Yossef <gilad@benyossef.com>
15 Cc: stable@vger.kernel.org # v4.19+
16 Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
17 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
18
19 ---
20 drivers/crypto/ccree/cc_pm.c | 5 +++--
21 1 file changed, 3 insertions(+), 2 deletions(-)
22
23 --- a/drivers/crypto/ccree/cc_pm.c
24 +++ b/drivers/crypto/ccree/cc_pm.c
25 @@ -42,14 +42,15 @@ int cc_pm_resume(struct device *dev)
26 struct cc_drvdata *drvdata = dev_get_drvdata(dev);
27
28 dev_dbg(dev, "unset HOST_POWER_DOWN_EN\n");
29 - cc_iowrite(drvdata, CC_REG(HOST_POWER_DOWN_EN), POWER_DOWN_DISABLE);
30 -
31 + /* Enables the device source clk */
32 rc = cc_clk_on(drvdata);
33 if (rc) {
34 dev_err(dev, "failed getting clock back on. We're toast.\n");
35 return rc;
36 }
37
38 + cc_iowrite(drvdata, CC_REG(HOST_POWER_DOWN_EN), POWER_DOWN_DISABLE);
39 +
40 rc = init_cc_regs(drvdata, false);
41 if (rc) {
42 dev_err(dev, "init_cc_regs (%x)\n", rc);