power: vote to turn off io_is_busy for interactive governor

If the interactive governor is being used, vote to turn off
io_is_busy when video encode starts to reduce power consumption.

Change-Id: I69738b989af3d6e0f1a708c21875b935b435cd91
This commit is contained in:
Anurag Singh 2013-12-18 18:24:14 -08:00
parent 5d71b32f0c
commit c2140b83b8
3 changed files with 8 additions and 1 deletions

View File

@ -151,6 +151,11 @@ enum SCREEN_PWR_CLPS_LVL {
enum THREAD_MIGRATION_LVL {
THREAD_MIGRATION_SYNC_OFF = 0x1400,
};
enum INTERACTIVE_IO_BUSY_LVL {
INTERACTIVE_IO_BUSY_OFF = 0x1B00,
INTERACTIVE_IO_BUSY_ON = 0x1B01,
};
#ifdef __cplusplus
}
#endif

View File

@ -171,7 +171,8 @@ static void process_video_encode_hint(void *metadata)
resource_values, sizeof(resource_values)/sizeof(resource_values[0]));
} else if ((strncmp(governor, INTERACTIVE_GOVERNOR, strlen(INTERACTIVE_GOVERNOR)) == 0) &&
(strlen(governor) == strlen(INTERACTIVE_GOVERNOR))) {
int resource_values[] = {TR_MS_30, HISPEED_LOAD_90, HS_FREQ_1026, THREAD_MIGRATION_SYNC_OFF};
int resource_values[] = {TR_MS_30, HISPEED_LOAD_90, HS_FREQ_1026, THREAD_MIGRATION_SYNC_OFF,
INTERACTIVE_IO_BUSY_OFF};
perform_hint_action(video_encode_metadata.hint_id,
resource_values, sizeof(resource_values)/sizeof(resource_values[0]));

View File

@ -285,6 +285,7 @@ case "$target" in
echo "20000 1400000:40000 1700000:20000" > /sys/devices/system/cpu/cpufreq/interactive/above_hispeed_delay
echo 90 > /sys/devices/system/cpu/cpufreq/interactive/go_hispeed_load
echo 1497600 > /sys/devices/system/cpu/cpufreq/interactive/hispeed_freq
echo 1 > /sys/devices/system/cpu/cpufreq/interactive/io_is_busy
echo "85 1500000:90 1800000:70" > /sys/devices/system/cpu/cpufreq/interactive/target_loads
echo 40000 > /sys/devices/system/cpu/cpufreq/interactive/min_sample_time
echo 20 > /sys/module/cpu_boost/parameters/boost_ms