rk1000: rk1000 Standby power consumption processing
authorhuang zhibao <hzb@rock-chips.com>
Sat, 18 Apr 2015 07:08:06 +0000 (15:08 +0800)
committerhuang zhibao <hzb@rock-chips.com>
Sat, 18 Apr 2015 07:08:06 +0000 (15:08 +0800)
drivers/mfd/rk1000-core.c
sound/soc/codecs/rk1000_codec.c

index 09d43d6749069b4963af774a3d6b3c5b29f065bb..68c6f86f7f4a6fd9953df3f4dbb2eb9dd3574aed 100755 (executable)
@@ -118,7 +118,7 @@ static int rk1000_control_suspend(struct device *dev)
        DBG("ret=0x%x\n", ret);
        ret = rk1000_i2c_send(I2C_ADDR_CTRL, CTRL_TVE, 0x07);
        DBG("ret=0x%x\n", ret);
-       rk1000_reset_ctrl(0);
+       //rk1000_reset_ctrl(0);
        return 0;
 }
 
@@ -126,7 +126,7 @@ static int rk1000_control_resume(struct device *dev)
 {
        int ret;
 
-       rk1000_reset_ctrl(1);
+       //rk1000_reset_ctrl(1);
        DBG("rk1000_control_resume\n");
        /* ADC power off */
        ret = rk1000_i2c_send(I2C_ADDR_CTRL, CTRL_ADC, 0x88);
index ffc0b98a9beea4076b094fc57f2ebc03f210bf3b..f97b797d3628bb5682b937e42bc00886f902dad2 100755 (executable)
@@ -738,11 +738,13 @@ static int rk1000_codec_suspend(struct snd_soc_codec *codec)
 {
        DBG("Enter::%s----%d\n", __func__, __LINE__);
        spk_ctrl_fun(GPIO_LOW);
+       rk1000_codec_set_bias_level(codec, SND_SOC_BIAS_STANDBY);
        return 0;
 }
 
 static int rk1000_codec_resume(struct snd_soc_codec *codec)
 {
+       rk1000_codec_set_bias_level(codec, SND_SOC_BIAS_PREPARE);
        spk_ctrl_fun(GPIO_HIGH);
        return 0;
 }