diff options
Diffstat (limited to 'drivers/mfd/tps65912-key.c')
| -rw-r--r-- | drivers/mfd/tps65912-key.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/mfd/tps65912-key.c b/drivers/mfd/tps65912-key.c index 37dac69cf7e..e3e55ee67a6 100644 --- a/drivers/mfd/tps65912-key.c +++ b/drivers/mfd/tps65912-key.c @@ -23,6 +23,7 @@ #include <linux/input.h> #include <linux/gpio.h> #include <linux/mfd/tps65912.h> +#include <linux/wakeup_source_notify.h> struct tps65912_key_data { struct input_dev *input_dev; @@ -100,6 +101,10 @@ void tps65912_broadcast_key_event(struct tps65912 *tps65912, input_report_key(key->input_dev, code, value); /*sync with input subsystem to solve the key cached problem*/ input_sync(key->input_dev); +#ifdef CONFIG_WAKEUP_SOURCE_NOTIFY + if (value == PWRKEY_PRESS) + wakeup_source_notify_subscriber(DISPLAY_WAKE_EVENT); +#endif /* CONFIG_WAKEUP_SOURCE_NOTIFY */ } } EXPORT_SYMBOL(tps65912_broadcast_key_event); |