aboutsummaryrefslogtreecommitdiff
path: root/drivers/input
diff options
context:
space:
mode:
authorMichael Trimarchi <trimarchimichael@yahoo.it>2009-01-14 11:55:52 +0000
committerAndy Green <agreen@pads.home.warmcat.com>2009-01-14 11:55:52 +0000
commitaadaf347b01b410adce68c36bddc11facfcc4969 (patch)
tree25fb8dde694fe8a820191bf8f60ad49c9424261c /drivers/input
parentcd58517c962c0c656d59fdc3968ff4df14fa988f (diff)
GTA02 suspend keyboard patch
Signed-off-by: Michael Trimarchi <trimarchimichael@yahoo.it>
Diffstat (limited to 'drivers/input')
-rw-r--r--drivers/input/keyboard/neo1973kbd.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/drivers/input/keyboard/neo1973kbd.c b/drivers/input/keyboard/neo1973kbd.c
index 20f0a348a36..929a2bbfcee 100644
--- a/drivers/input/keyboard/neo1973kbd.c
+++ b/drivers/input/keyboard/neo1973kbd.c
@@ -143,11 +143,13 @@ static irqreturn_t neo1973kbd_aux_irq(int irq, void *dev)
{
int *p = NULL;
- /* if you stall inside resume then AUX will force a panic,
- which in turn forces a dump of the pending syslog */
+ if (machine_is_neo1973_gta01()) {
+ /* if you stall inside resume then AUX will force a panic,
+ which in turn forces a dump of the pending syslog */
- if (global_inside_suspend)
- printk(KERN_ERR "death %d\n", *p);
+ if (global_inside_suspend)
+ printk(KERN_ERR "death %d\n", *p);
+ }
mod_timer(&aux_key_timer, jiffies + AUX_TIMER_TIMEOUT);
@@ -275,11 +277,18 @@ static irqreturn_t neo1973kbd_headphone_irq(int irq, void *dev_id)
#ifdef CONFIG_PM
static int neo1973kbd_suspend(struct platform_device *dev, pm_message_t state)
{
+ if (machine_is_neo1973_gta02()) {
+ disable_irq(keys[NEO1973_KEY_AUX].irq);
+ del_timer_sync(&aux_key_timer);
+ }
return 0;
}
static int neo1973kbd_resume(struct platform_device *dev)
{
+ if (machine_is_neo1973_gta02())
+ enable_irq(keys[NEO1973_KEY_AUX].irq);
+
return 0;
}
#else