rk30: i2c: fix warning about clk_disable
authorkfx <kfx@rock-chips.com>
Wed, 6 Jun 2012 10:59:15 +0000 (18:59 +0800)
committerkfx <kfx@rock-chips.com>
Wed, 6 Jun 2012 10:59:15 +0000 (18:59 +0800)
drivers/i2c/busses/i2c-rk29-adapter.c
drivers/i2c/busses/i2c-rk30-adapter.c
drivers/i2c/busses/i2c-rk30.c

index edae8e907693c140ff4b7b649ea886e5be269607..726c8241d805c2fb755d26cb2e56b496f8a7872e 100755 (executable)
@@ -536,6 +536,8 @@ static int rk29_i2c_xfer(struct i2c_adapter *adap,
        int ret = 0;
     unsigned long scl_rate;
 
+    clk_enable(i2c->clk);
+
     if(msgs[0].scl_rate <= 400000 && msgs[0].scl_rate >= 10000)
                scl_rate = msgs[0].scl_rate;
        else if(msgs[0].scl_rate > 400000){
@@ -560,6 +562,7 @@ static int rk29_i2c_xfer(struct i2c_adapter *adap,
     rk29_i2c_disable_mport(i2c);
     if(i2c->is_div_from_arm[i2c->adap.nr])
                wake_unlock(&i2c->idlelock[i2c->adap.nr]);
+    clk_disable(i2c->clk);
        return ret;
 }
 
index f7b700b40d6ac0dabc857f5aa7e636bd2224fff2..d3374fd6f0bbac59563ec34cde74e65e62fd2cc4 100755 (executable)
@@ -187,7 +187,6 @@ static void rk30_i2c_init_hw(struct rk30_i2c *i2c, unsigned long scl_rate)
 {
         i2c->scl_rate = 0;
         rk30_i2c_set_clk(i2c, scl_rate);
-        clk_disable(i2c->clk);
        return;
 }
 /* returns TRUE if we this is the last byte in the current message */
index 24935c72740e27a0a140b17c609ef29da29c16af..ccd3777bb91f257f657fabdf15303b4803be9263 100755 (executable)
@@ -124,7 +124,7 @@ static int rk30_i2c_probe(struct platform_device *pdev)
 
        i2c_dbg(&pdev->dev, "clock source %p\n", i2c->clk);
 
-       clk_enable(i2c->clk);
+       //clk_enable(i2c->clk);
 
        /* map the registers */