Hi Werner,

This patch is provided with the folloing, 

# remove AUX key as wake up source. 

# the system can get into suspend when gsmd starts up.


Cheers,

Matt



Index: linux-2.6.24/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c
===================================================================
--- linux-2.6.24.orig/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c	2008-02-18 16:45:39.000000000 +0800
+++ linux-2.6.24/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c	2008-02-18 17:29:21.000000000 +0800
@@ -159,6 +159,8 @@
 	/* GPIO state is saved/restored by S3C2410 core GPIO driver, so we
 	 * don't need to do anything here */
 
+	/* disable DL GSM to prevent jack_insert becoming flaoting */
+	s3c2410_gpio_setpin(GTA02_GPIO_nDL_GSM, 1);
 	return 0;
 }
 
@@ -172,6 +174,7 @@
 	if (s3c2410_gpio_getpin(GTA01_GPIO_MODEM_ON) && gta01_gsm.con)
 		console_stop(gta01_gsm.con);
 
+	s3c2410_gpio_setpin(GTA02_GPIO_nDL_GSM, 0);
 	return 0;
 }
 #else
Index: linux-2.6.24/drivers/input/keyboard/neo1973kbd.c
===================================================================
--- linux-2.6.24.orig/drivers/input/keyboard/neo1973kbd.c	2008-02-18 17:12:36.000000000 +0800
+++ linux-2.6.24/drivers/input/keyboard/neo1973kbd.c	2008-02-18 17:33:25.000000000 +0800
@@ -24,6 +24,7 @@
 
 #include <asm/hardware.h>
 #include <asm/arch/gta01.h>
+#include <asm/mach-types.h>
 
 struct neo1973kbd {
 	struct input_dev *input;
@@ -158,7 +159,9 @@
 		dev_err(&pdev->dev, "Can't get IRQ %u\n", irq_aux);
 		goto out_aux;
 	}
-	enable_irq_wake(irq_aux);
+
+	if (machine_is_neo1973_gta01())
+		enable_irq_wake(irq_aux);
 
 	if (request_irq(irq_hold, neo1973kbd_hold_irq, IRQF_DISABLED |
 			IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,

Reply via email to