diff options
author | Christopher N. Hesse <raymanfx@gmail.com> | 2016-06-22 23:04:39 +0200 |
---|---|---|
committer | Christopher N. Hesse <raymanfx@gmail.com> | 2016-07-13 01:59:31 -0700 |
commit | e480d89ce536a3ad6748ab0aea1c78824ae02c85 (patch) | |
tree | cf44516fd016b2ba7a1e33f6d67eed3b89e624c7 /power | |
parent | 66c10c23720f7d1360c786de7d61507a04f7c74b (diff) | |
download | android_hardware_samsung-e480d89ce536a3ad6748ab0aea1c78824ae02c85.tar.gz android_hardware_samsung-e480d89ce536a3ad6748ab0aea1c78824ae02c85.tar.bz2 android_hardware_samsung-e480d89ce536a3ad6748ab0aea1c78824ae02c85.zip |
power: Add double tap to wake support
Change-Id: Icb0b6d442544b39576ec74e70e97751d6bc70590
Diffstat (limited to 'power')
-rw-r--r-- | power/Android.mk | 4 | ||||
-rw-r--r-- | power/power.c | 19 |
2 files changed, 22 insertions, 1 deletions
diff --git a/power/Android.mk b/power/Android.mk index 2aaaac8..cf968fc 100644 --- a/power/Android.mk +++ b/power/Android.mk @@ -24,6 +24,10 @@ LOCAL_SHARED_LIBRARIES := liblog libcutils LOCAL_SRC_FILES := power.c LOCAL_MODULE_TAGS := optional +ifneq ($(TARGET_TAP_TO_WAKE_NODE),) + LOCAL_CFLAGS := -DDT2W_PATH=\"$(TARGET_DT2W_PATH)\" +endif + include $(BUILD_SHARED_LIBRARY) endif diff --git a/power/power.c b/power/power.c index 3cf9cc2..f28dce5 100644 --- a/power/power.c +++ b/power/power.c @@ -503,6 +503,22 @@ static int samsung_get_feature(struct power_module *module __unused, return -1; } +static void samsung_set_feature(struct power_module *module, feature_t feature, int state) +{ + struct samsung_power_module *samsung_pwr = (struct samsung_power_module *) module; + + switch (feature) { +#ifdef DT2W_PATH + case POWER_FEATURE_DOUBLE_TAP_TO_WAKE: + ALOGV("%s: %s double tap to wake", __func__, state ? "enabling" : "disabling"); + sysfs_write(DT2W_PATH, state > 0 ? "1" : "0"); + break; +#endif + default: + break; + } +} + static struct hw_module_methods_t power_module_methods = { .open = NULL, }; @@ -522,7 +538,8 @@ struct samsung_power_module HAL_MODULE_INFO_SYM = { .init = samsung_power_init, .setInteractive = samsung_power_set_interactive, .powerHint = samsung_power_hint, - .getFeature = samsung_get_feature + .getFeature = samsung_get_feature, + .setFeature = samsung_set_feature }, .lock = PTHREAD_MUTEX_INITIALIZER, |