clk_prepare_enable() can fail here and we must check its return value.

Signed-off-by: Arvind Yadav <[email protected]>
---
 drivers/input/keyboard/tegra-kbc.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/input/keyboard/tegra-kbc.c 
b/drivers/input/keyboard/tegra-kbc.c
index 0c07e10..edc1385 100644
--- a/drivers/input/keyboard/tegra-kbc.c
+++ b/drivers/input/keyboard/tegra-kbc.c
@@ -370,8 +370,11 @@ static int tegra_kbc_start(struct tegra_kbc *kbc)
 {
        unsigned int debounce_cnt;
        u32 val = 0;
+       int ret;
 
-       clk_prepare_enable(kbc->clk);
+       ret = clk_prepare_enable(kbc->clk);
+       if (ret)
+               return ret;
 
        /* Reset the KBC controller to clear all previous status.*/
        reset_control_assert(kbc->rst);
-- 
1.9.1

Reply via email to