From 0871799d8506a69bd6c8e56598707b297552ce01 Mon Sep 17 00:00:00 2001
From: ChenJQ <chenjq@rock-chips.com>
Date: Wed, 1 Sep 2010 05:21:03 -0700
Subject: [PATCH] =?utf8?q?=E6=89=93=E5=BC=8018=E4=BF=A1=E6=81=AF=E6=9C=BA?=
 =?utf8?q?=E7=9A=848994=E4=BD=BF=E8=83=BD=E8=84=9A=EF=BC=8C=E5=85=B3?=
 =?utf8?q?=E9=97=AD=E8=80=B3=E6=9C=BA=E6=A3=80=E6=B5=8B=E9=83=A8=E5=88=86?=
 =?utf8?q?=E6=89=93=E5=8D=B0=EF=BC=8C=E8=A7=A3=E5=86=B3=E9=87=8A=E6=94=BEI?=
 =?utf8?q?RQ=E9=94=99=E8=AF=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=utf8
Content-Transfer-Encoding: 8bit

---
 arch/arm/mach-rk2818/board-infosdk.c     |  5 +++++
 drivers/headset_observe/rk2818_headset.c | 14 +++++---------
 2 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/arch/arm/mach-rk2818/board-infosdk.c b/arch/arm/mach-rk2818/board-infosdk.c
index 0d756b3b9a1c..c432f6c9e8ab 100755
--- a/arch/arm/mach-rk2818/board-infosdk.c
+++ b/arch/arm/mach-rk2818/board-infosdk.c
@@ -358,6 +358,11 @@ struct rk2818_gpio_expander_info  extgpio_tca6424_settinginfo[] = {
 		.pin_type           = GPIO_OUT,
 		.pin_value			= GPIO_LOW,
 	 }, 
+	 {
+		.gpio_num    		= TCA6424_P11,
+		.pin_type           = GPIO_OUT,
+		.pin_value			= GPIO_HIGH,
+	 }, 
 	 {
 		.gpio_num    		= TCA6424_P12,
 		.pin_type           = GPIO_IN,
diff --git a/drivers/headset_observe/rk2818_headset.c b/drivers/headset_observe/rk2818_headset.c
index 2161a12954bc..8bbf1e0567e3 100644
--- a/drivers/headset_observe/rk2818_headset.c
+++ b/drivers/headset_observe/rk2818_headset.c
@@ -38,7 +38,7 @@
 #include "rk2818_headset.h"
 
 /* Debug */
-#if 1
+#if 0
 #define DBG	printk
 #else
 #define DBG
@@ -140,16 +140,12 @@ static int rockchip_headsetobserve_probe(struct platform_device *pdev)
 
 	prk2818_headset_info->irq = gpio_to_irq(prk2818_headset_info->irq);
 	headset_irq_type = prk2818_headset_info->irq_type;
-	headsetobserve_work();
-
-	if(headset_irq_type == (IRQF_TRIGGER_FALLING|IRQF_TRIGGER_RISING)){
-		free_irq(prk2818_headset_info->irq,NULL);
-		ret = request_irq(prk2818_headset_info->irq, headset_interrupt, headset_irq_type, NULL, NULL);
-		if (ret ) {
-			DBG("headsetobserve: request irq failed\n");
+	ret = request_irq(prk2818_headset_info->irq, headset_interrupt, headset_irq_type, NULL, NULL);
+	if (ret ) {
+		DBG("headsetobserve: request irq failed\n");
         	return ret;
-		}
 	}
+	headsetobserve_work();
 
 	return 0;	
 }
-- 
2.34.1