diff options
author | Lin Fuzhen <fuzhen.lin@freescale.com> | 2012-03-01 18:52:09 +0800 |
---|---|---|
committer | Lin Fuzhen <fuzhen.lin@freescale.com> | 2012-03-01 18:56:52 +0800 |
commit | 9ba4c42103fae2c3daff774d95d5103268d28a5b (patch) | |
tree | cb6c4ad50369cc730542cac44af72a93b8db3ed2 /drivers/input | |
parent | 1275e8745ea9f5d5c62123b002fee4b4aec4b19f (diff) |
ENGR00175884 PM: Fix short press gpio power key failed resume system issue
For gpio IRQ which defined as device IRQ is being enabled after syscore resume
completed, this may cause the key down could not be deteced sometime.
Enabel gpio power key early irq during syscore instead of at device resume time.
Some platform like Android need to konw the power key is pressed then to
reume the other devcies
Signed-off-by: Lin Fuzhen <fuzhen.lin@freescale.com>
Diffstat (limited to 'drivers/input')
-rw-r--r-- | drivers/input/keyboard/gpio_keys.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/input/keyboard/gpio_keys.c b/drivers/input/keyboard/gpio_keys.c index 6e6145b9a4c1..4ed0ab563736 100644 --- a/drivers/input/keyboard/gpio_keys.c +++ b/drivers/input/keyboard/gpio_keys.c @@ -414,6 +414,14 @@ static int __devinit gpio_keys_setup_key(struct platform_device *pdev, */ if (!button->can_disable) irqflags |= IRQF_SHARED; + /* + * Resume power key early during syscore instead of at device + * resume time. + * Some platform like Android need to konw the power key is pressed + * then to reume the other devcies + */ + if (button->wakeup) + irqflags |= IRQF_EARLY_RESUME; error = request_any_context_irq(irq, gpio_keys_isr, irqflags, desc, bdata); if (error < 0) { |