summaryrefslogtreecommitdiff
path: root/drivers/crypto
diff options
context:
space:
mode:
authorSudip Mukherjee <sudipm.mukherjee@gmail.com>2016-08-23 20:28:54 +0530
committerTao Huang <huangtao@rock-chips.com>2018-05-24 14:07:59 +0800
commit5321d2f8eb15b10a31b424103e7748d08fce4ad6 (patch)
tree7f52b0b9c9463e3c6e7f0018efb31b1d875c7994 /drivers/crypto
parent2e5c80594b64955c80f8f5f0dbd6deb24267b501 (diff)
UPSTREAM: crypto: rockchip - use devm_add_action_or_reset()
If devm_add_action() fails we are explicitly calling the cleanup to free the resources allocated. Lets use the helper devm_add_action_or_reset() and return directly in case of error, as we know that the cleanup function has been already called by the helper if there was any error. Signed-off-by: Sudip Mukherjee <sudip.mukherjee@codethink.co.uk> Reviewed-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> (cherry picked from commit 16d56963e832339fc2dff6a4afce14138fb61932) Change-Id: I9fd5d7c0659744243b313693615bf332a2b5e05c Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com>
Diffstat (limited to 'drivers/crypto')
-rw-r--r--drivers/crypto/rockchip/rk3288_crypto.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/crypto/rockchip/rk3288_crypto.c b/drivers/crypto/rockchip/rk3288_crypto.c
index af508258d2ea..d0f80c6241f9 100644
--- a/drivers/crypto/rockchip/rk3288_crypto.c
+++ b/drivers/crypto/rockchip/rk3288_crypto.c
@@ -304,11 +304,9 @@ static int rk_crypto_probe(struct platform_device *pdev)
usleep_range(10, 20);
reset_control_deassert(crypto_info->rst);
- err = devm_add_action(dev, rk_crypto_action, crypto_info);
- if (err) {
- reset_control_assert(crypto_info->rst);
+ err = devm_add_action_or_reset(dev, rk_crypto_action, crypto_info);
+ if (err)
goto err_crypto;
- }
spin_lock_init(&crypto_info->lock);