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 16d56963e8)

Change-Id: I9fd5d7c0659744243b313693615bf332a2b5e05c
Signed-off-by: Lin Jinhan <troy.lin@rock-chips.com>
This commit is contained in:
Sudip Mukherjee
2016-08-23 20:28:54 +05:30
committed by Tao Huang
parent 2e5c80594b
commit 5321d2f8eb

View File

@@ -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);