Explorar o código

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 %!s(int64=12) %!d(string=hai) anos
pai
achega
2dc9688a10
Modificáronse 1 ficheiros con 1 adicións e 0 borrados
  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;
 	}