]>
Commit | Line | Data |
---|---|---|
d074880a GKH |
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); |