From 774b9614566e8336940b653efcfde6c70bb2a3fb Mon Sep 17 00:00:00 2001 From: =?utf8?q?=E9=82=B1=E5=BB=BA=E6=96=8C?= Date: Fri, 8 Apr 2011 18:36:01 +0800 Subject: [PATCH] =?utf8?q?rk29=5Fa22:=E5=8A=9F=E6=94=BEldo=E5=BC=95?= =?utf8?q?=E8=84=9A=E4=BD=BF=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- drivers/input/touchscreen/gt801_ts.c | 2 +- sound/soc/codecs/wm8994.c | 21 +++++++++++++++++---- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/drivers/input/touchscreen/gt801_ts.c b/drivers/input/touchscreen/gt801_ts.c index b8b3a5e9cab8..c8bcbad77ef3 100755 --- a/drivers/input/touchscreen/gt801_ts.c +++ b/drivers/input/touchscreen/gt801_ts.c @@ -581,7 +581,7 @@ static int gt801_ts_resume(struct i2c_client *client) printk("gt801 TS Resume\n"); gpio_set_value(ts->gpio_reset, ts->gpio_reset_active_low? GPIO_HIGH:GPIO_LOW); - + msleep(50); if (ts->use_irq) { printk("enabling IRQ %d\n", client->irq); enable_irq(client->irq); diff --git a/sound/soc/codecs/wm8994.c b/sound/soc/codecs/wm8994.c index bf3d6729a968..1aa016dbd1a7 100755 --- a/sound/soc/codecs/wm8994.c +++ b/sound/soc/codecs/wm8994.c @@ -2720,7 +2720,7 @@ void wm8994_check_channel(void) { wm8994_codec_fnc_t **wm8994_fnc_ptr = wm8994_codec_sequence; unsigned char wm8994_mode = wm8994_current_mode; -unsigned int error_count = 0; + unsigned int error_count = 0; DBG("%s--%d::Enter\n",__FUNCTION__,__LINE__); isWM8994SetChannel = true; @@ -2883,7 +2883,11 @@ int snd_soc_put_route(struct snd_kcontrol *kcontrol, wm8994_check_channel(); isWM8994SetChannel = false; - +#if defined(CONFIG_MACH_A22) + gpio_request(RK29_PIN6_PD3, NULL); //AUDIO_PA_ON + gpio_direction_output(RK29_PIN6_PD3,GPIO_HIGH); + gpio_free(RK29_PIN6_PD3); +#endif return 0; } /* @@ -3419,7 +3423,11 @@ static int wm8994_suspend(struct platform_device *pdev, pm_message_t state) gpio_request(WM_EN_PIN, NULL); gpio_direction_output(WM_EN_PIN,GPIO_LOW); gpio_free(WM_EN_PIN); - +#if defined(CONFIG_MACH_A22) + gpio_request(RK29_PIN6_PD3, NULL); //AUDIO_PA_ON + gpio_direction_output(RK29_PIN6_PD3,GPIO_LOW); + gpio_free(RK29_PIN6_PD3); +#endif msleep(50); return 0; @@ -3436,7 +3444,7 @@ static int wm8994_resume(struct platform_device *pdev) gpio_request(WM_EN_PIN, NULL); gpio_direction_output(WM_EN_PIN,GPIO_HIGH); gpio_free(WM_EN_PIN); - + msleep(50); wm8994_set_bias_level(codec,SND_SOC_BIAS_STANDBY); @@ -3459,6 +3467,11 @@ static int wm8994_resume(struct platform_device *pdev) wm8994_check_channel(); isWM8994SetChannel = false; +#if defined(CONFIG_MACH_A22) + gpio_request(RK29_PIN6_PD3, NULL); //AUDIO_PA_ON + gpio_direction_output(RK29_PIN6_PD3,GPIO_HIGH); + gpio_free(RK29_PIN6_PD3); +#endif return 0; } -- 2.34.1