summaryrefslogtreecommitdiffstats
path: root/power-8998.c
diff options
context:
space:
mode:
authordianlujitao <dianlujitao@lineageos.org>2019-02-23 20:24:57 +0800
committerdianlujitao <dianlujitao@lineageos.org>2019-02-28 23:53:59 +0800
commit8780cb7828f9280bec1345ee942f89b17cc108a2 (patch)
treed5ebf9504aa37189ebeb54e013e94e2370e2886d /power-8998.c
parentadf8a1cdf9d90d6f9e833b2c00829251ca5ab490 (diff)
downloadandroid_hardware_qcom_power-8780cb7828f9280bec1345ee942f89b17cc108a2.tar.gz
android_hardware_qcom_power-8780cb7828f9280bec1345ee942f89b17cc108a2.tar.bz2
android_hardware_qcom_power-8780cb7828f9280bec1345ee942f89b17cc108a2.zip
power: Pass NULL parameter in powerHint if data is zero
* This restores the behavior in AOSP and CAF power HAL to avoid confusion. Change-Id: I72f5bb9286e2f57121e39eea82d2fe8854989393
Diffstat (limited to 'power-8998.c')
-rw-r--r--power-8998.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/power-8998.c b/power-8998.c
index 20804ab..0f5a89b 100644
--- a/power-8998.c
+++ b/power-8998.c
@@ -88,8 +88,9 @@ int get_number_of_profiles()
}
#endif
-static int set_power_profile(int profile)
+static int set_power_profile(void *data)
{
+ int profile = data ? *((int*)data) : 0;
int ret = -EINVAL;
const char *profile_name = NULL;
@@ -193,7 +194,7 @@ static int switch_mode(perf_mode_type_t mode) {
static int process_perf_hint(void *data, perf_mode_type_t mode) {
// enable
- if (*(int32_t *)data) {
+ if (data) {
ALOGI("Enable request for mode: 0x%x", mode);
// check if mode is current mode
if (current_mode & mode) {
@@ -322,7 +323,7 @@ int power_hint_override(power_hint_t hint, void *data)
int ret_val = HINT_NONE;
if (hint == POWER_HINT_SET_PROFILE) {
- if (set_power_profile(*(int32_t *)data) < 0)
+ if (set_power_profile(data) < 0)
ALOGE("Setting power profile failed. perf HAL not started?");
return HINT_HANDLED;
}