diff options
author | dianlujitao <dianlujitao@lineageos.org> | 2019-02-23 20:24:57 +0800 |
---|---|---|
committer | dianlujitao <dianlujitao@lineageos.org> | 2019-02-28 23:53:59 +0800 |
commit | 8780cb7828f9280bec1345ee942f89b17cc108a2 (patch) | |
tree | d5ebf9504aa37189ebeb54e013e94e2370e2886d /power-8998.c | |
parent | adf8a1cdf9d90d6f9e833b2c00829251ca5ab490 (diff) | |
download | android_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.c | 7 |
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; } |