OSDN Git Service

power: Adds setFeature functionality for the power module
authorRuchi Kandoi <kandoiruchi@google.com>
Wed, 29 Oct 2014 17:43:38 +0000 (10:43 -0700)
committerRuchi Kandoi <kandoiruchi@google.com>
Fri, 31 Oct 2014 17:58:30 +0000 (10:58 -0700)
Adds the setFeature callback which could be used to enable/disable
power as well as performance specific features.

POWER_FEATURE_DOUBLE_TAP_WAKE is added which uses the setFeature
callback to enable/disable the double-tap feature.

Bug: 16875464
Change-Id: I5ed9b5be8fddedf9861eedd962def421d9fac5bf

include/hardware/power.h

index dc33705..af7799e 100644 (file)
@@ -27,6 +27,7 @@ __BEGIN_DECLS
 
 #define POWER_MODULE_API_VERSION_0_1  HARDWARE_MODULE_API_VERSION(0, 1)
 #define POWER_MODULE_API_VERSION_0_2  HARDWARE_MODULE_API_VERSION(0, 2)
+#define POWER_MODULE_API_VERSION_0_3  HARDWARE_MODULE_API_VERSION(0, 3)
 
 /**
  * The id of this module
@@ -48,6 +49,10 @@ typedef enum {
     POWER_HINT_LOW_POWER = 0x00000005
 } power_hint_t;
 
+typedef enum {
+    POWER_FEATURE_DOUBLE_TAP_TO_WAKE = 0x00000001
+} feature_t;
+
 /**
  * Every hardware module must have a data structure named HAL_MODULE_INFO_SYM
  * and the fields of this data structure must begin with hw_module_t
@@ -127,6 +132,21 @@ typedef struct power_module {
      */
     void (*powerHint)(struct power_module *module, power_hint_t hint,
                       void *data);
+
+    /*
+     * (*setFeature) is called to turn on or off a particular feature
+     * depending on the state parameter. The possible features are:
+     *
+     * FEATURE_DOUBLE_TAP_TO_WAKE
+     *
+     *    Enabling/Disabling this feature will allow/disallow the system
+     *    to wake up by tapping the screen twice.
+     *
+     * availability: version 0.3
+     *
+     */
+    void (*setFeature)(struct power_module *module, feature_t feature, int state);
+
 } power_module_t;