summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHoria Geantă <horia.geanta@nxp.com>2017-04-05 11:41:03 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-04-18 07:14:36 +0200
commitfd8bae310684b557c0b30ae9105420956a41494f (patch)
tree9e211589ae0b6de0fdef3b818e0c6d5b9c2f3903
parentba7681e4eee6739e4f23a1ba21fb7737fe4ce4f4 (diff)
downloadlinux-stable-fd8bae310684b557c0b30ae9105420956a41494f.tar.gz
linux-stable-fd8bae310684b557c0b30ae9105420956a41494f.tar.bz2
linux-stable-fd8bae310684b557c0b30ae9105420956a41494f.zip
crypto: caam - fix RNG deinstantiation error checking
commit 40c98cb57cdbc377456116ad4582c89e329721b0 upstream. RNG instantiation was previously fixed by commit 62743a4145bb9 ("crypto: caam - fix RNG init descriptor ret. code checking") while deinstantiation was not addressed. Since the descriptors used are similar, in the sense that they both end with a JUMP HALT command, checking for errors should be similar too, i.e. status code 7000_0000h should be considered successful. Fixes: 1005bccd7a4a6 ("crypto: caam - enable instantiation of all RNG4 state handles") Signed-off-by: Horia Geantă <horia.geanta@nxp.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/crypto/caam/ctrl.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/crypto/caam/ctrl.c b/drivers/crypto/caam/ctrl.c
index 69d4a1326fee..53e61459c69f 100644
--- a/drivers/crypto/caam/ctrl.c
+++ b/drivers/crypto/caam/ctrl.c
@@ -278,7 +278,8 @@ static int deinstantiate_rng(struct device *ctrldev, int state_handle_mask)
/* Try to run it through DECO0 */
ret = run_descriptor_deco0(ctrldev, desc, &status);
- if (ret || status) {
+ if (ret ||
+ (status && status != JRSTA_SSRC_JUMP_HALT_CC)) {
dev_err(ctrldev,
"Failed to deinstantiate RNG4 SH%d\n",
sh_idx);