summaryrefslogtreecommitdiffstats
path: root/power-8084.c
diff options
context:
space:
mode:
Diffstat (limited to 'power-8084.c')
-rw-r--r--power-8084.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/power-8084.c b/power-8084.c
index 73176c1..8612769 100644
--- a/power-8084.c
+++ b/power-8084.c
@@ -145,12 +145,11 @@ int set_interactive_override(int on) {
if (get_scaling_governor(governor, sizeof(governor)) == -1) {
ALOGE("Can't obtain scaling governor.");
-
return HINT_NONE;
}
if (!on) {
- /* Display off. */
+ /* Display off */
/*
* We need to be able to identify the first display off hint
* and release the current lock holder
@@ -161,12 +160,19 @@ int set_interactive_override(int on) {
}
/* Used for all subsequent toggles to the display */
undo_hint_action(DISPLAY_STATE_HINT_ID_2);
+ if (is_interactive_governor(governor)) {
+ int resource_values[] = {TR_MS_50, THREAD_MIGRATION_SYNC_OFF};
+ perform_hint_action(DISPLAY_STATE_HINT_ID, resource_values,
+ ARRAY_SIZE(resource_values));
+ }
} else {
/* Display on */
int resource_values2[] = {CPUS_ONLINE_MIN_2};
perform_hint_action(DISPLAY_STATE_HINT_ID_2, resource_values2,
ARRAY_SIZE(resource_values2));
+ if (is_interactive_governor(governor)) {
+ undo_hint_action(DISPLAY_STATE_HINT_ID);
+ }
}
-
- return HINT_NONE;
+ return HINT_HANDLED;
}