msm: ais: handle the error value returned during get clock
currently only NULL pointer check is used to validate the return value from clkget this change to handle all the failures. Change-Id: I275cb4717c675baf528e05c50058f2c6b0025011 Signed-off-by: E V Ravi <evenka@codeaurora.org> Signed-off-by: Sumalatha Malothu <smalot@codeaurora.org>
This commit is contained in:
parent
2692bfe650
commit
12fa518175
1 changed files with 5 additions and 3 deletions
|
@ -1,4 +1,4 @@
|
|||
/* Copyright (c) 2011-2018, The Linux Foundation. All rights reserved.
|
||||
/* Copyright (c) 2011-2019, The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License version 2 and
|
||||
|
@ -357,12 +357,13 @@ int msm_cam_clk_enable(struct device *dev, struct msm_cam_clk_info *clk_info,
|
|||
}
|
||||
} else {
|
||||
for (i = num_clk - 1; i >= 0; i--) {
|
||||
if (clk_ptr[i] != NULL) {
|
||||
if (!IS_ERR_OR_NULL(clk_ptr[i])) {
|
||||
CDBG("%s disable %s\n", __func__,
|
||||
clk_info[i].clk_name);
|
||||
clk_disable(clk_ptr[i]);
|
||||
clk_unprepare(clk_ptr[i]);
|
||||
clk_put(clk_ptr[i]);
|
||||
clk_ptr[i] = NULL;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -378,10 +379,11 @@ cam_clk_set_err:
|
|||
clk_put(clk_ptr[i]);
|
||||
cam_clk_get_err:
|
||||
for (i--; i >= 0; i--) {
|
||||
if (clk_ptr[i] != NULL) {
|
||||
if (!IS_ERR_OR_NULL(clk_ptr[i])) {
|
||||
clk_disable(clk_ptr[i]);
|
||||
clk_unprepare(clk_ptr[i]);
|
||||
clk_put(clk_ptr[i]);
|
||||
clk_ptr[i] = NULL;
|
||||
}
|
||||
}
|
||||
return rc;
|
||||
|
|
Loading…
Add table
Reference in a new issue