diff options
Diffstat (limited to 'power-8084.c')
-rw-r--r-- | power-8084.c | 14 |
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; } |