diff options
| author | Wengang Wu <wgw@motorola.com> | 2014-07-23 19:01:06 -0500 |
|---|---|---|
| committer | Wengang Wu <wgw@motorola.com> | 2014-07-23 19:01:06 -0500 |
| commit | 3ec0e610cc23c072b90c1bde3ff7bc767f6bac8d (patch) | |
| tree | 5e1da063acd7183666d466bec665467a142b61c6 /drivers/misc/m4sensorhub_gesture.c | |
| parent | 2394a8ad9dd527633e7220de4cbf307cc5fcc3f2 (diff) | |
| download | olio-linux-3.10-3ec0e610cc23c072b90c1bde3ff7bc767f6bac8d.tar.xz olio-linux-3.10-3ec0e610cc23c072b90c1bde3ff7bc767f6bac8d.zip | |
IKXCLOCK-3122 Smart Ambient: support ambient off gesture
Change-Id: I22622983c50f1d564f40314f92e49646279826f5
Diffstat (limited to 'drivers/misc/m4sensorhub_gesture.c')
| -rw-r--r-- | drivers/misc/m4sensorhub_gesture.c | 27 |
1 files changed, 15 insertions, 12 deletions
diff --git a/drivers/misc/m4sensorhub_gesture.c b/drivers/misc/m4sensorhub_gesture.c index 6ef8daacebc..d5e364ea6c5 100644 --- a/drivers/misc/m4sensorhub_gesture.c +++ b/drivers/misc/m4sensorhub_gesture.c @@ -76,18 +76,6 @@ static void m4ges_isr(enum m4sensorhub_irqs int_event, void *handle) goto m4ges_isr_fail; } -#ifdef CONFIG_WAKEUP_SOURCE_NOTIFY - if (dd->iiodat.gesture_type == GESTURE_WRIST_ROTATE) { - notify_display_wakeup(GESTURE); - } else if (dd->iiodat.gesture_type == GESTURE_VIEW) { - notify_display_wakeup(GESTURE_VIEW); - /* the GESTURE_VIEW is only effect for kernel now - * do not send gesture to android - */ - goto m4ges_isr_fail; - } -#endif /* CONFIG_WAKEUP_SOURCE_NOTIFY */ - size = m4sensorhub_reg_getsize(dd->m4, M4SH_REG_GESTURE_CONFIDENCE1); err = m4sensorhub_reg_read(dd->m4, M4SH_REG_GESTURE_CONFIDENCE1, (char *)&(dd->iiodat.gesture_confidence)); @@ -115,6 +103,21 @@ static void m4ges_isr(enum m4sensorhub_irqs int_event, void *handle) goto m4ges_isr_fail; } +#ifdef CONFIG_WAKEUP_SOURCE_NOTIFY + if (dd->iiodat.gesture_type == GESTURE_WRIST_ROTATE) { + notify_display_wakeup(GESTURE); + } else if (dd->iiodat.gesture_type == GESTURE_VIEW) { + if (dd->iiodat.gesture_value == GESTURE_VIEW_ON) + notify_display_wakeup(GESTURE_VIEWON); + else + notify_display_wakeup(GESTURE_VIEWOFF); + /* the GESTURE_VIEW is only effect for kernel now + * do not send gesture to android + */ + goto m4ges_isr_fail; + } +#endif /* CONFIG_WAKEUP_SOURCE_NOTIFY */ + dd->iiodat.timestamp = iio_get_time_ns(); iio_push_to_buffers(iio, (unsigned char *)&(dd->iiodat)); dd->gesture_count++; |