Browse Source

i2c: wmt: add missing clk_disable_unprepare() on error

Add the missing clk_disable_unprepare() before return
from wmt_i2c_reset_hardware() in the error handling case.

Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Cc: stable@kernel.org # 3.11+
Wei Yongjun 11 years ago
parent
commit
2dc9688a10
1 changed files with 1 additions and 0 deletions
  1. 1 0
      drivers/i2c/busses/i2c-wmt.c

+ 1 - 0
drivers/i2c/busses/i2c-wmt.c

@@ -349,6 +349,7 @@ static int wmt_i2c_reset_hardware(struct wmt_i2c_dev *i2c_dev)
 	err = clk_set_rate(i2c_dev->clk, 20000000);
 	if (err) {
 		dev_err(i2c_dev->dev, "failed to set clock = 20Mhz\n");
+		clk_disable_unprepare(i2c_dev->clk);
 		return err;
 	}