diff options
Diffstat (limited to 'include/hardware/power.h')
-rw-r--r-- | include/hardware/power.h | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/include/hardware/power.h b/include/hardware/power.h index 10612f3..c266d8b 100644 --- a/include/hardware/power.h +++ b/include/hardware/power.h @@ -46,11 +46,19 @@ typedef enum { */ POWER_HINT_VIDEO_ENCODE = 0x00000003, POWER_HINT_VIDEO_DECODE = 0x00000004, - POWER_HINT_LOW_POWER = 0x00000005 + POWER_HINT_LOW_POWER = 0x00000005, + POWER_HINT_CAM_PREVIEW = 0x00000006, + + POWER_HINT_CPU_BOOST = 0x00000010, + POWER_HINT_LAUNCH_BOOST = 0x00000011, + POWER_HINT_AUDIO = 0x00000020, + POWER_HINT_SET_PROFILE = 0x00000030 + } power_hint_t; typedef enum { - POWER_FEATURE_DOUBLE_TAP_TO_WAKE = 0x00000001 + POWER_FEATURE_DOUBLE_TAP_TO_WAKE = 0x00000001, + POWER_FEATURE_SUPPORTED_PROFILES = 0x00001000 } feature_t; /** @@ -126,6 +134,12 @@ typedef struct power_module { * parameter is non-zero when low power mode is activated, and zero * when deactivated. * + * POWER_HINT_CPU_BOOST + * + * An operation is happening where it would be ideal for the CPU to + * be boosted for a specific duration. The data parameter is an + * integer value of the boost duration in microseconds. + * * A particular platform may choose to ignore any hint. * * availability: version 0.2 @@ -148,6 +162,12 @@ typedef struct power_module { */ void (*setFeature)(struct power_module *module, feature_t feature, int state); + /* + * (*getFeature) is called to get the current value of a particular + * feature or capability from the hardware or PowerHAL + */ + int (*getFeature)(struct power_module *module, feature_t feature); + } power_module_t; |