summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZhao Wei Liew <zhaoweiliew@gmail.com>2016-06-26 21:29:34 +0800
committerMichael Bestas <mkbestas@lineageos.org>2018-03-26 01:44:29 +0300
commit5a81c9ad7f52ff7bc3a6058f46a759a4894e85fe (patch)
treefad5a3905499a5b2e6892f7d0cf24e3c531332c8
parent6fe5252149b22ad589199499cbdc57bc70081944 (diff)
downloadandroid_hardware_qcom_power-5a81c9ad7f52ff7bc3a6058f46a759a4894e85fe.tar.gz
android_hardware_qcom_power-5a81c9ad7f52ff7bc3a6058f46a759a4894e85fe.tar.bz2
android_hardware_qcom_power-5a81c9ad7f52ff7bc3a6058f46a759a4894e85fe.zip
power: Simplify display_hint_sent
Check for whether the display hint has been sent at the start of the set_interactive() function in the common powerHAL. This gets rid of the need to replicate the same variable in every target-specific powerHAL that implements the set_interactive_override() function. Also remove the unnecessary saved_interactive_mode variable used by the msm-dcvs governor; its function is superseded by the variable display_hint_sent. Change-Id: If7dd11fcb578211f4f83847f9257232c4138ce53
-rw-r--r--power-660.c11
-rw-r--r--power-8084.c18
-rw-r--r--power-8226.c2
-rw-r--r--power-8610.c2
-rw-r--r--power-8916.c41
-rw-r--r--power-8952.c15
-rw-r--r--power-8953.c11
-rw-r--r--power-8974.c18
-rw-r--r--power-8992.c12
-rw-r--r--power-8994.c12
-rw-r--r--power-8996.c13
-rw-r--r--power-helper.c218
12 files changed, 145 insertions, 228 deletions
diff --git a/power-660.c b/power-660.c
index 9f99cb0..2453286 100644
--- a/power-660.c
+++ b/power-660.c
@@ -50,8 +50,6 @@
#define MIN_VAL(X,Y) ((X>Y)?(Y):(X))
-static int saved_interactive_mode = -1;
-static int display_hint_sent;
static int video_encode_hint_sent;
static int cam_preview_hint_sent;
@@ -152,20 +150,15 @@ int set_interactive_override(int on)
num_resources = ARRAY_SIZE(res);
}
- if (!display_hint_sent) {
- perform_hint_action(DISPLAY_STATE_HINT_ID,
- resource_values, num_resources);
- display_hint_sent = 1;
- }
+ perform_hint_action(DISPLAY_STATE_HINT_ID,
+ resource_values, num_resources);
}
} else {
/* Display on. */
if (is_interactive_governor(governor)) {
undo_hint_action(DISPLAY_STATE_HINT_ID);
- display_hint_sent = 0;
}
}
- saved_interactive_mode = !!on;
return HINT_HANDLED;
}
diff --git a/power-8084.c b/power-8084.c
index c49bc94..a44a273 100644
--- a/power-8084.c
+++ b/power-8084.c
@@ -47,8 +47,6 @@
#include "performance.h"
#include "power-common.h"
-static int display_hint_sent;
-static int display_hint2_sent;
static int first_display_off_hint;
extern int display_boost;
@@ -74,37 +72,29 @@ int set_interactive_override(int on)
first_display_off_hint = 1;
}
/* used for all subsequent toggles to the display */
- if (!display_hint2_sent) {
- undo_hint_action(DISPLAY_STATE_HINT_ID_2);
- display_hint2_sent = 1;
- }
+ undo_hint_action(DISPLAY_STATE_HINT_ID_2);
}
if ((strncmp(governor, ONDEMAND_GOVERNOR, strlen(ONDEMAND_GOVERNOR)) == 0) &&
(strlen(governor) == strlen(ONDEMAND_GOVERNOR))) {
int resource_values[] = {MS_500, SYNC_FREQ_600, OPTIMAL_FREQ_600, THREAD_MIGRATION_SYNC_OFF};
- if (!display_hint_sent) {
- perform_hint_action(DISPLAY_STATE_HINT_ID,
- resource_values, ARRAY_SIZE(resource_values));
- display_hint_sent = 1;
- }
+ perform_hint_action(DISPLAY_STATE_HINT_ID,
+ resource_values, ARRAY_SIZE(resource_values));
return HINT_HANDLED;
}
} else {
/* Display on */
- if (display_boost && display_hint2_sent) {
+ if (display_boost) {
int resource_values2[] = {CPUS_ONLINE_MIN_2};
perform_hint_action(DISPLAY_STATE_HINT_ID_2,
resource_values2, ARRAY_SIZE(resource_values2));
- display_hint2_sent = 0;
}
if ((strncmp(governor, ONDEMAND_GOVERNOR, strlen(ONDEMAND_GOVERNOR)) == 0) &&
(strlen(governor) == strlen(ONDEMAND_GOVERNOR))) {
undo_hint_action(DISPLAY_STATE_HINT_ID);
- display_hint_sent = 0;
return HINT_HANDLED;
}
diff --git a/power-8226.c b/power-8226.c
index 050bc0a..764d9cd 100644
--- a/power-8226.c
+++ b/power-8226.c
@@ -47,8 +47,6 @@
#include "performance.h"
#include "power-common.h"
-static int display_hint_sent;
-
int power_hint_override(power_hint_t hint, void *data)
{
switch(hint) {
diff --git a/power-8610.c b/power-8610.c
index 050bc0a..764d9cd 100644
--- a/power-8610.c
+++ b/power-8610.c
@@ -47,8 +47,6 @@
#include "performance.h"
#include "power-common.h"
-static int display_hint_sent;
-
int power_hint_override(power_hint_t hint, void *data)
{
switch(hint) {
diff --git a/power-8916.c b/power-8916.c
index 3a7dddb..040cec9 100644
--- a/power-8916.c
+++ b/power-8916.c
@@ -62,9 +62,7 @@ static int saved_dcvs_cpu0_slack_max = -1;
static int saved_dcvs_cpu0_slack_min = -1;
static int saved_mpdecision_slack_max = -1;
static int saved_mpdecision_slack_min = -1;
-static int saved_interactive_mode = -1;
static int slack_node_rw_failed = 0;
-static int display_hint_sent;
int display_boost;
/**
@@ -132,13 +130,9 @@ int set_interactive_override(int on)
/* Display off. */
if (is_target_8916()) {
if (is_interactive_governor(governor)) {
- int resource_values[] = {TR_MS_50, THREAD_MIGRATION_SYNC_OFF};
-
- if (!display_hint_sent) {
- perform_hint_action(DISPLAY_STATE_HINT_ID,
- resource_values, ARRAY_SIZE(resource_values));
- display_hint_sent = 1;
- }
+ int resource_values[] = {TR_MS_50, THREAD_MIGRATION_SYNC_OFF};
+ perform_hint_action(DISPLAY_STATE_HINT_ID,
+ resource_values, ARRAY_SIZE(resource_values));
} /* Perf time rate set for 8916 target*/
/* End of display hint for 8916 */
} else {
@@ -160,25 +154,18 @@ int set_interactive_override(int on)
}
}
}
-
- if (!display_hint_sent) {
- perform_hint_action(DISPLAY_STATE_HINT_ID,
- resource_values, ARRAY_SIZE(resource_values));
- display_hint_sent = 1;
- }
- } /* Perf time rate set for CORE0,CORE4 8939 target*/
- /* End of display hint for 8939 */
- }
+ perform_hint_action(DISPLAY_STATE_HINT_ID,
+ resource_values, ARRAY_SIZE(resource_values));
+ } /* Perf time rate set for CORE0,CORE4 8939 target*/
+ } /* End of display hint for 8939 */
} else {
/* Display on. */
if (is_target_8916()) {
- if (is_interactive_governor(governor)) {
- undo_hint_action(DISPLAY_STATE_HINT_ID);
- display_hint_sent = 0;
- }
+ if (is_interactive_governor(governor)) {
+ undo_hint_action(DISPLAY_STATE_HINT_ID);
+ }
} else {
- if (is_interactive_governor(governor)) {
-
+ if (is_interactive_governor(governor)) {
/* Recovering MIN_FREQ in display ON case */
snprintf(tmp_str, NODE_MAX, "%d", MIN_FREQ_CPU0_DISP_ON);
if (sysfs_write(scaling_min_freq[0], tmp_str) != 0) {
@@ -193,12 +180,10 @@ int set_interactive_override(int on)
}
}
}
- undo_hint_action(DISPLAY_STATE_HINT_ID);
- display_hint_sent = 0;
- }
+ undo_hint_action(DISPLAY_STATE_HINT_ID);
+ }
} /* End of check condition during the DISPLAY ON case */
}
- saved_interactive_mode = !!on;
return HINT_HANDLED;
}
diff --git a/power-8952.c b/power-8952.c
index 1427b59..47fba8d 100644
--- a/power-8952.c
+++ b/power-8952.c
@@ -48,8 +48,6 @@
#include "performance.h"
#include "power-common.h"
-static int saved_interactive_mode = -1;
-static int display_hint_sent;
static int video_encode_hint_sent;
static int current_power_profile = PROFILE_BALANCED;
@@ -234,21 +232,16 @@ int set_interactive_override(int on)
INT_OP_NOTIFY_ON_MIGRATE, 0x00
};
- if (!display_hint_sent) {
- perform_hint_action(
- DISPLAY_STATE_HINT_ID,
- resource_values,
- ARRAY_SIZE(resource_values));
- display_hint_sent = 1;
- }
+ perform_hint_action(
+ DISPLAY_STATE_HINT_ID,
+ resource_values,
+ ARRAY_SIZE(resource_values));
} /* Perf time rate set for CORE0,CORE4 8952 target*/
} else {
/* Display on. */
if (is_interactive_governor(governor)) {
undo_hint_action(DISPLAY_STATE_HINT_ID);
- display_hint_sent = 0;
}
}
- saved_interactive_mode = !!on;
return HINT_HANDLED;
}
diff --git a/power-8953.c b/power-8953.c
index 3a4d353..7c305f2 100644
--- a/power-8953.c
+++ b/power-8953.c
@@ -48,8 +48,6 @@
#include "performance.h"
#include "power-common.h"
-static int saved_interactive_mode = -1;
-static int display_hint_sent;
static int video_encode_hint_sent;
static int cam_preview_hint_sent;
@@ -98,20 +96,15 @@ int set_interactive_override(int on)
/* timer rate - 40mS*/
int resource_values[] = {0x41424000, 0x28,
};
- if (!display_hint_sent) {
- perform_hint_action(DISPLAY_STATE_HINT_ID,
- resource_values, ARRAY_SIZE(resource_values));
- display_hint_sent = 1;
- }
+ perform_hint_action(DISPLAY_STATE_HINT_ID,
+ resource_values, ARRAY_SIZE(resource_values));
} /* Perf time rate set for CORE0,CORE4 8952 target*/
} else {
/* Display on. */
if (is_interactive_governor(governor)) {
undo_hint_action(DISPLAY_STATE_HINT_ID);
- display_hint_sent = 0;
}
}
- saved_interactive_mode = !!on;
return HINT_HANDLED;
}
diff --git a/power-8974.c b/power-8974.c
index e760515..fc54805 100644
--- a/power-8974.c
+++ b/power-8974.c
@@ -48,8 +48,6 @@
#include "performance.h"
#include "power-common.h"
-static int display_hint_sent;
-static int display_hint2_sent;
static int first_display_off_hint;
extern int display_boost;
@@ -215,37 +213,29 @@ int set_interactive_override(int on)
first_display_off_hint = 1;
}
/* used for all subsequent toggles to the display */
- if (!display_hint2_sent) {
- undo_hint_action(DISPLAY_STATE_HINT_ID_2);
- display_hint2_sent = 1;
- }
+ undo_hint_action(DISPLAY_STATE_HINT_ID_2);
}
if ((strncmp(governor, ONDEMAND_GOVERNOR, strlen(ONDEMAND_GOVERNOR)) == 0) &&
(strlen(governor) == strlen(ONDEMAND_GOVERNOR))) {
int resource_values[] = {MS_500, SYNC_FREQ_600, OPTIMAL_FREQ_600, THREAD_MIGRATION_SYNC_OFF};
- if (!display_hint_sent) {
- perform_hint_action(DISPLAY_STATE_HINT_ID,
- resource_values, ARRAY_SIZE(resource_values));
- display_hint_sent = 1;
- }
+ perform_hint_action(DISPLAY_STATE_HINT_ID,
+ resource_values, ARRAY_SIZE(resource_values));
return HINT_HANDLED;
}
} else {
/* Display on */
- if (display_boost && display_hint2_sent) {
+ if (display_boost) {
int resource_values2[] = {CPUS_ONLINE_MIN_2};
perform_hint_action(DISPLAY_STATE_HINT_ID_2,
resource_values2, ARRAY_SIZE(resource_values2));
- display_hint2_sent = 0;
}
if ((strncmp(governor, ONDEMAND_GOVERNOR, strlen(ONDEMAND_GOVERNOR)) == 0) &&
(strlen(governor) == strlen(ONDEMAND_GOVERNOR))) {
undo_hint_action(DISPLAY_STATE_HINT_ID);
- display_hint_sent = 0;
return HINT_HANDLED;
}
diff --git a/power-8992.c b/power-8992.c
index c87ba5a..d4b020d 100644
--- a/power-8992.c
+++ b/power-8992.c
@@ -47,8 +47,6 @@
#include "performance.h"
#include "power-common.h"
-static int display_hint_sent;
-
static int process_video_encode_hint(void *metadata)
{
char governor[80];
@@ -125,18 +123,14 @@ int set_interactive_override(int on)
/* Display off */
if (is_interactive_governor(governor)) {
int resource_values[] = {0x777}; /* 4+0 core config in display off */
- if (!display_hint_sent) {
- perform_hint_action(DISPLAY_STATE_HINT_ID,
- resource_values, ARRAY_SIZE(resource_values));
- display_hint_sent = 1;
- return HINT_HANDLED;
- }
+ perform_hint_action(DISPLAY_STATE_HINT_ID,
+ resource_values, ARRAY_SIZE(resource_values));
+ return HINT_HANDLED;
}
} else {
/* Display on */
if (is_interactive_governor(governor)) {
undo_hint_action(DISPLAY_STATE_HINT_ID);
- display_hint_sent = 0;
return HINT_HANDLED;
}
}
diff --git a/power-8994.c b/power-8994.c
index 4ff434a..417720c 100644
--- a/power-8994.c
+++ b/power-8994.c
@@ -47,8 +47,6 @@
#include "performance.h"
#include "power-common.h"
-static int display_hint_sent;
-
static int process_video_encode_hint(void *metadata)
{
char governor[80];
@@ -125,18 +123,14 @@ int set_interactive_override(int on)
/* Display off */
if (is_interactive_governor(governor)) {
int resource_values[] = {0x777}; /* 4+0 core config in display off */
- if (!display_hint_sent) {
- perform_hint_action(DISPLAY_STATE_HINT_ID,
- resource_values, ARRAY_SIZE(resource_values));
- display_hint_sent = 1;
- return HINT_HANDLED;
- }
+ perform_hint_action(DISPLAY_STATE_HINT_ID,
+ resource_values, ARRAY_SIZE(resource_values));
+ return HINT_HANDLED;
}
} else {
/* Display on */
if (is_interactive_governor(governor)) {
undo_hint_action(DISPLAY_STATE_HINT_ID);
- display_hint_sent = 0;
return HINT_HANDLED;
}
}
diff --git a/power-8996.c b/power-8996.c
index 29f9724..b0ffcc1 100644
--- a/power-8996.c
+++ b/power-8996.c
@@ -48,7 +48,6 @@
#include "performance.h"
#include "power-common.h"
-static int display_hint_sent;
static int camera_hint_ref_count;
static int current_power_profile = PROFILE_BALANCED;
@@ -305,19 +304,15 @@ int set_interactive_override(int on)
/* Display off */
if (is_interactive_governor(governor)) {
int resource_values[] = {}; /* dummy node */
- if (!display_hint_sent) {
- perform_hint_action(DISPLAY_STATE_HINT_ID,
- resource_values, ARRAY_SIZE(resource_values));
- display_hint_sent = 1;
- ALOGI("Display Off hint start");
- return HINT_HANDLED;
- }
+ perform_hint_action(DISPLAY_STATE_HINT_ID,
+ resource_values, ARRAY_SIZE(resource_values));
+ ALOGI("Display Off hint start");
+ return HINT_HANDLED;
}
} else {
/* Display on */
if (is_interactive_governor(governor)) {
undo_hint_action(DISPLAY_STATE_HINT_ID);
- display_hint_sent = 0;
ALOGI("Display Off hint stop");
return HINT_HANDLED;
}
diff --git a/power-helper.c b/power-helper.c
index 270262e..31d996d 100644
--- a/power-helper.c
+++ b/power-helper.c
@@ -148,7 +148,6 @@ static int saved_dcvs_cpu0_slack_max = -1;
static int saved_dcvs_cpu0_slack_min = -1;
static int saved_mpdecision_slack_max = -1;
static int saved_mpdecision_slack_min = -1;
-static int saved_interactive_mode = -1;
static int slack_node_rw_failed = 0;
static int display_hint_sent;
int display_boost;
@@ -342,6 +341,15 @@ void power_set_interactive(int on)
perf_hint_enable(VENDOR_HINT_DISPLAY_ON, 0);
}
+ /**
+ * Ignore consecutive display-off hints
+ * Consecutive display-on hints are already handled
+ */
+ if (display_hint_sent && !on)
+ return;
+
+ display_hint_sent = !on;
+
#ifdef SET_INTERACTIVE_EXT
power_set_interactive_ext(on);
#endif
@@ -364,110 +372,102 @@ void power_set_interactive(int on)
(strlen(governor) == strlen(ONDEMAND_GOVERNOR))) {
int resource_values[] = { MS_500, THREAD_MIGRATION_SYNC_OFF };
- if (!display_hint_sent) {
- perform_hint_action(DISPLAY_STATE_HINT_ID,
- resource_values, ARRAY_SIZE(resource_values));
- display_hint_sent = 1;
- }
+ perform_hint_action(DISPLAY_STATE_HINT_ID,
+ resource_values, ARRAY_SIZE(resource_values));
} else if (is_interactive_governor(governor)) {
int resource_values[] = {TR_MS_50, THREAD_MIGRATION_SYNC_OFF};
- if (!display_hint_sent) {
- perform_hint_action(DISPLAY_STATE_HINT_ID,
- resource_values, ARRAY_SIZE(resource_values));
- display_hint_sent = 1;
- }
+ perform_hint_action(DISPLAY_STATE_HINT_ID,
+ resource_values, ARRAY_SIZE(resource_values));
} else if ((strncmp(governor, MSMDCVS_GOVERNOR, strlen(MSMDCVS_GOVERNOR)) == 0) &&
(strlen(governor) == strlen(MSMDCVS_GOVERNOR))) {
- if (saved_interactive_mode == 1){
- /* Display turned off. */
- if (sysfs_read(DCVS_CPU0_SLACK_MAX_NODE, tmp_str, NODE_MAX - 1)) {
- if (!slack_node_rw_failed) {
- ALOGE("Failed to read from %s", DCVS_CPU0_SLACK_MAX_NODE);
- }
-
- rc = 1;
- } else {
- saved_dcvs_cpu0_slack_max = atoi(tmp_str);
+ /* Display turned off. */
+ if (sysfs_read(DCVS_CPU0_SLACK_MAX_NODE, tmp_str, NODE_MAX - 1)) {
+ if (!slack_node_rw_failed) {
+ ALOGE("Failed to read from %s", DCVS_CPU0_SLACK_MAX_NODE);
}
- if (sysfs_read(DCVS_CPU0_SLACK_MIN_NODE, tmp_str, NODE_MAX - 1)) {
- if (!slack_node_rw_failed) {
- ALOGE("Failed to read from %s", DCVS_CPU0_SLACK_MIN_NODE);
- }
+ rc = 1;
+ } else {
+ saved_dcvs_cpu0_slack_max = atoi(tmp_str);
+ }
- rc = 1;
- } else {
- saved_dcvs_cpu0_slack_min = atoi(tmp_str);
+ if (sysfs_read(DCVS_CPU0_SLACK_MIN_NODE, tmp_str, NODE_MAX - 1)) {
+ if (!slack_node_rw_failed) {
+ ALOGE("Failed to read from %s", DCVS_CPU0_SLACK_MIN_NODE);
}
- if (sysfs_read(MPDECISION_SLACK_MAX_NODE, tmp_str, NODE_MAX - 1)) {
- if (!slack_node_rw_failed) {
- ALOGE("Failed to read from %s", MPDECISION_SLACK_MAX_NODE);
- }
+ rc = 1;
+ } else {
+ saved_dcvs_cpu0_slack_min = atoi(tmp_str);
+ }
- rc = 1;
- } else {
- saved_mpdecision_slack_max = atoi(tmp_str);
+ if (sysfs_read(MPDECISION_SLACK_MAX_NODE, tmp_str, NODE_MAX - 1)) {
+ if (!slack_node_rw_failed) {
+ ALOGE("Failed to read from %s", MPDECISION_SLACK_MAX_NODE);
}
- if (sysfs_read(MPDECISION_SLACK_MIN_NODE, tmp_str, NODE_MAX - 1)) {
- if(!slack_node_rw_failed) {
- ALOGE("Failed to read from %s", MPDECISION_SLACK_MIN_NODE);
- }
+ rc = 1;
+ } else {
+ saved_mpdecision_slack_max = atoi(tmp_str);
+ }
- rc = 1;
- } else {
- saved_mpdecision_slack_min = atoi(tmp_str);
+ if (sysfs_read(MPDECISION_SLACK_MIN_NODE, tmp_str, NODE_MAX - 1)) {
+ if(!slack_node_rw_failed) {
+ ALOGE("Failed to read from %s", MPDECISION_SLACK_MIN_NODE);
}
- /* Write new values. */
- if (saved_dcvs_cpu0_slack_max != -1) {
- snprintf(tmp_str, NODE_MAX, "%d", 10 * saved_dcvs_cpu0_slack_max);
+ rc = 1;
+ } else {
+ saved_mpdecision_slack_min = atoi(tmp_str);
+ }
- if (sysfs_write(DCVS_CPU0_SLACK_MAX_NODE, tmp_str) != 0) {
- if (!slack_node_rw_failed) {
- ALOGE("Failed to write to %s", DCVS_CPU0_SLACK_MAX_NODE);
- }
+ /* Write new values. */
+ if (saved_dcvs_cpu0_slack_max != -1) {
+ snprintf(tmp_str, NODE_MAX, "%d", 10 * saved_dcvs_cpu0_slack_max);
- rc = 1;
+ if (sysfs_write(DCVS_CPU0_SLACK_MAX_NODE, tmp_str) != 0) {
+ if (!slack_node_rw_failed) {
+ ALOGE("Failed to write to %s", DCVS_CPU0_SLACK_MAX_NODE);
}
- }
- if (saved_dcvs_cpu0_slack_min != -1) {
- snprintf(tmp_str, NODE_MAX, "%d", 10 * saved_dcvs_cpu0_slack_min);
+ rc = 1;
+ }
+ }
- if (sysfs_write(DCVS_CPU0_SLACK_MIN_NODE, tmp_str) != 0) {
- if(!slack_node_rw_failed) {
- ALOGE("Failed to write to %s", DCVS_CPU0_SLACK_MIN_NODE);
- }
+ if (saved_dcvs_cpu0_slack_min != -1) {
+ snprintf(tmp_str, NODE_MAX, "%d", 10 * saved_dcvs_cpu0_slack_min);
- rc = 1;
+ if (sysfs_write(DCVS_CPU0_SLACK_MIN_NODE, tmp_str) != 0) {
+ if(!slack_node_rw_failed) {
+ ALOGE("Failed to write to %s", DCVS_CPU0_SLACK_MIN_NODE);
}
- }
- if (saved_mpdecision_slack_max != -1) {
- snprintf(tmp_str, NODE_MAX, "%d", 10 * saved_mpdecision_slack_max);
+ rc = 1;
+ }
+ }
- if (sysfs_write(MPDECISION_SLACK_MAX_NODE, tmp_str) != 0) {
- if(!slack_node_rw_failed) {
- ALOGE("Failed to write to %s", MPDECISION_SLACK_MAX_NODE);
- }
+ if (saved_mpdecision_slack_max != -1) {
+ snprintf(tmp_str, NODE_MAX, "%d", 10 * saved_mpdecision_slack_max);
- rc = 1;
+ if (sysfs_write(MPDECISION_SLACK_MAX_NODE, tmp_str) != 0) {
+ if(!slack_node_rw_failed) {
+ ALOGE("Failed to write to %s", MPDECISION_SLACK_MAX_NODE);
}
- }
- if (saved_mpdecision_slack_min != -1) {
- snprintf(tmp_str, NODE_MAX, "%d", 10 * saved_mpdecision_slack_min);
+ rc = 1;
+ }
+ }
- if (sysfs_write(MPDECISION_SLACK_MIN_NODE, tmp_str) != 0) {
- if(!slack_node_rw_failed) {
- ALOGE("Failed to write to %s", MPDECISION_SLACK_MIN_NODE);
- }
+ if (saved_mpdecision_slack_min != -1) {
+ snprintf(tmp_str, NODE_MAX, "%d", 10 * saved_mpdecision_slack_min);
- rc = 1;
+ if (sysfs_write(MPDECISION_SLACK_MIN_NODE, tmp_str) != 0) {
+ if(!slack_node_rw_failed) {
+ ALOGE("Failed to write to %s", MPDECISION_SLACK_MIN_NODE);
}
+
+ rc = 1;
}
}
@@ -478,68 +478,62 @@ void power_set_interactive(int on)
if ((strncmp(governor, ONDEMAND_GOVERNOR, strlen(ONDEMAND_GOVERNOR)) == 0) &&
(strlen(governor) == strlen(ONDEMAND_GOVERNOR))) {
undo_hint_action(DISPLAY_STATE_HINT_ID);
- display_hint_sent = 0;
} else if (is_interactive_governor(governor)) {
undo_hint_action(DISPLAY_STATE_HINT_ID);
- display_hint_sent = 0;
} else if ((strncmp(governor, MSMDCVS_GOVERNOR, strlen(MSMDCVS_GOVERNOR)) == 0) &&
(strlen(governor) == strlen(MSMDCVS_GOVERNOR))) {
- if (saved_interactive_mode == -1 || saved_interactive_mode == 0) {
- /* Display turned on. Restore if possible. */
- if (saved_dcvs_cpu0_slack_max != -1) {
- snprintf(tmp_str, NODE_MAX, "%d", saved_dcvs_cpu0_slack_max);
-
- if (sysfs_write(DCVS_CPU0_SLACK_MAX_NODE, tmp_str) != 0) {
- if (!slack_node_rw_failed) {
- ALOGE("Failed to write to %s", DCVS_CPU0_SLACK_MAX_NODE);
- }
+ /* Display turned on. Restore if possible. */
+ if (saved_dcvs_cpu0_slack_max != -1) {
+ snprintf(tmp_str, NODE_MAX, "%d", saved_dcvs_cpu0_slack_max);
- rc = 1;
+ if (sysfs_write(DCVS_CPU0_SLACK_MAX_NODE, tmp_str) != 0) {
+ if (!slack_node_rw_failed) {
+ ALOGE("Failed to write to %s", DCVS_CPU0_SLACK_MAX_NODE);
}
- }
- if (saved_dcvs_cpu0_slack_min != -1) {
- snprintf(tmp_str, NODE_MAX, "%d", saved_dcvs_cpu0_slack_min);
+ rc = 1;
+ }
+ }
- if (sysfs_write(DCVS_CPU0_SLACK_MIN_NODE, tmp_str) != 0) {
- if (!slack_node_rw_failed) {
- ALOGE("Failed to write to %s", DCVS_CPU0_SLACK_MIN_NODE);
- }
+ if (saved_dcvs_cpu0_slack_min != -1) {
+ snprintf(tmp_str, NODE_MAX, "%d", saved_dcvs_cpu0_slack_min);
- rc = 1;
+ if (sysfs_write(DCVS_CPU0_SLACK_MIN_NODE, tmp_str) != 0) {
+ if (!slack_node_rw_failed) {
+ ALOGE("Failed to write to %s", DCVS_CPU0_SLACK_MIN_NODE);
}
- }
- if (saved_mpdecision_slack_max != -1) {
- snprintf(tmp_str, NODE_MAX, "%d", saved_mpdecision_slack_max);
+ rc = 1;
+ }
+ }
- if (sysfs_write(MPDECISION_SLACK_MAX_NODE, tmp_str) != 0) {
- if (!slack_node_rw_failed) {
- ALOGE("Failed to write to %s", MPDECISION_SLACK_MAX_NODE);
- }
+ if (saved_mpdecision_slack_max != -1) {
+ snprintf(tmp_str, NODE_MAX, "%d", saved_mpdecision_slack_max);
- rc = 1;
+ if (sysfs_write(MPDECISION_SLACK_MAX_NODE, tmp_str) != 0) {
+ if (!slack_node_rw_failed) {
+ ALOGE("Failed to write to %s", MPDECISION_SLACK_MAX_NODE);
}
- }
- if (saved_mpdecision_slack_min != -1) {
- snprintf(tmp_str, NODE_MAX, "%d", saved_mpdecision_slack_min);
+ rc = 1;
+ }
+ }
- if (sysfs_write(MPDECISION_SLACK_MIN_NODE, tmp_str) != 0) {
- if (!slack_node_rw_failed) {
- ALOGE("Failed to write to %s", MPDECISION_SLACK_MIN_NODE);
- }
+ if (saved_mpdecision_slack_min != -1) {
+ snprintf(tmp_str, NODE_MAX, "%d", saved_mpdecision_slack_min);
- rc = 1;
+ if (sysfs_write(MPDECISION_SLACK_MIN_NODE, tmp_str) != 0) {
+ if (!slack_node_rw_failed) {
+ ALOGE("Failed to write to %s", MPDECISION_SLACK_MIN_NODE);
}
+
+ rc = 1;
}
}
slack_node_rw_failed = rc;
}
}
-
- saved_interactive_mode = !!on;
}
void __attribute__((weak)) set_device_specific_feature(feature_t UNUSED(feature), int UNUSED(state))