mfd:rk616:core:power ctrl after mclk in
authoryxj <yxj@rock-chips.com>
Thu, 2 May 2013 03:43:41 +0000 (11:43 +0800)
committeryxj <yxj@rock-chips.com>
Fri, 3 May 2013 01:18:28 +0000 (09:18 +0800)
drivers/mfd/rk616-core.c

index accfca41629253427acda6e5ce6e0661f17a5a1c..f8c0ec82e1443313deff9662c69957c4f4b59c60 100644 (file)
@@ -364,9 +364,6 @@ static int rk616_i2c_probe(struct i2c_client *client,const struct i2c_device_id
        i2c_set_clientdata(client, rk616);
        dev_set_drvdata(rk616->dev,rk616);
        
-       if(rk616->pdata->power_init)
-               rk616->pdata->power_init();
-
 #if defined(CONFIG_SND_RK29_SOC_I2S_8CH)        
        iis_clk = clk_get_sys("rk29_i2s.0", "i2s");
 #elif defined(CONFIG_SND_RK29_SOC_I2S_2CH)
@@ -390,6 +387,11 @@ static int rk616_i2c_probe(struct i2c_client *client,const struct i2c_device_id
                clk_set_rate(iis_clk, 11289600);
                clk_put(iis_clk);
        }
+
+       
+       if(rk616->pdata->power_init)
+               rk616->pdata->power_init();
+       
        rk616->read_dev = rk616_i2c_read_reg;
        rk616->write_dev = rk616_i2c_write_reg;