From: Arvind Yadav Date: Tue, 16 May 2017 08:27:41 +0000 (+0530) Subject: crypto: img-hash - Handle return value of clk_prepare_enable X-Git-Tag: v4.13-rc1~158^2~121 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=5f052c9c631d360d6ec6202714b9d6529a21117a;p=karo-tx-linux.git crypto: img-hash - Handle return value of clk_prepare_enable Here, Clock enable can failed. So adding an error check for clk_prepare_enable. Signed-off-by: Arvind Yadav Signed-off-by: Herbert Xu --- diff --git a/drivers/crypto/img-hash.c b/drivers/crypto/img-hash.c index 9b07f3d88feb..0c6a917a9ab8 100644 --- a/drivers/crypto/img-hash.c +++ b/drivers/crypto/img-hash.c @@ -1088,9 +1088,17 @@ static int img_hash_suspend(struct device *dev) static int img_hash_resume(struct device *dev) { struct img_hash_dev *hdev = dev_get_drvdata(dev); + int ret; - clk_prepare_enable(hdev->hash_clk); - clk_prepare_enable(hdev->sys_clk); + ret = clk_prepare_enable(hdev->hash_clk); + if (ret) + return ret; + + ret = clk_prepare_enable(hdev->sys_clk); + if (ret) { + clk_disable_unprepare(hdev->hash_clk); + return ret; + } return 0; }