[Galaxy Note 3 Android Development] Tunasty:
Hey [MENTION=4401403]friedrich420[/MENTION], I have a request bro. Is it possible to port Ktoonservative gov from ktoonsez kernel? I can ask him for the permission if he's okay with you porting it over for our device. Reason I'm lookin forward to doing this is because his kernel gives us the opportunity to control per core, how many cores to be on while screen off or on. How many cores to get boosted when we touch screen etc. It would be great to have something like this for Note 3.

Would you be interested in this if he gives us the permission? I could have asked other devs for this but I really like your work and you definitely know lot of stuff about kernels. That way we can have that governor in your kernel along with others.

Thanks and let me know bro.

Thread link: http://xdaforums.com/showthread.php?t=2289140

Github: https://github.com/ktoonsez/KT-SGS4

Explanation of his governor:

ktoonservativeq explained:

***** NOTES *****

Any item with the word cycle in it refers to how many sampling_rate's have occurred.

Examples:

A "boost_hold_cycles" of 22 and a sampling_rate of 45000 equates to 1 seconds of holding your Mhz at the boost level.

A block_cycles_offline_screen_on of 11 and a sampling_rate of 45000 equates to a half of a second block before it takes cores offline.

***** NOTES *****

block_cycles_offline_screen_off =1

How many sampling_rate cycles need to occur before a core is allowed to go OFFLINE while the screen is OFF.

block_cycles_offline_screen_on = 11

How many sampling_rate cycles need to occur before a core is allowed to go OFFLINE while the screen is ON.

block_cycles_online_screen_off = 11

How many sampling_rate cycles need to occur before a core is allowed to go ONLINE while the screen is OFF.

block_cycles_online_screen_on = 3

How many sampling_rate cycles need to occur before a core is allowed to go ONLINE while the screen is ON.

block_cycles_raise_screen_off = 11

How many sampling_rate cycles need to occur before the current Mhz is allowed to be raised while the screen is OFF.

block_cycles_raise_screen_on = 3

How many sampling_rate cycles need to occur before the current Mhz is allowed to be raised while the screen is ON.

boost_2nd_core_on_button_screen_off = 1

When this item is a 1, it will turn on the 2nd core when a button any hard button is pressed while the screen is OFF. 0 leaves the core in its current state.

boost_2nd_core_on_button_screen_on = 1

When this item is a 1, it will turn on the 2nd core when a button any hard button is pressed while the screen is ON. 0 leaves the core in its current state.

boost_3rd_core_on_button_screen_off = 0

When this item is a 1, it will turn on the 3nd core when a button any hard button is pressed while the screen is OFF. 0 leaves the core in its current state.

boost_3rd_core_on_button_screen_on = 0

When this item is a 1, it will turn on the 3nd core when a button any hard button is pressed while the screen is ON. 0 leaves the core in its current state.

boost_4th_core_on_button_screen_off = 0

When this item is a 1, it will turn on the 4nd core when a button any hard button is pressed while the screen is OFF. 0 leaves the core in its current state.

boost_4th_core_on_button_screen_on = 0

When this item is a 1, it will turn on the 4nd core when a button any hard button is pressed while the screen is ON. 0 leaves the core in its current state.

boost_hold_cycles = 22

How many sampling_rate cycles need to occur before going out of CPU/GPU boost mode

disable_hotplug = 0

When this item is a 1, it disables hotplugging so all cores stay on full time. 0 lets all cores turn on and off when needed.

disable_hotplug_bt = 0

When this item is a 1, it disables hotplugging so all cores stay on full time while paired to a bluetooth device and doing bluetooth activities like playing music, transfering files.... 0 doesn't do anything extra to the cores when doing bluetooth functions.

disable_hotplug_chrg = 0

When this item is a 1, it disables hotplugging so all cores stay on full time while charging the device. 0 doesn't do anything extra to the cores while charging.

disable_hotplug_media = 0

When this item is a 1, it disables hotplugging so all cores stay on full time while playing music or movies. 0 doesn't do anything extra to the cores while music or movies are playing.

down_threshold_screen_off = 52

A percentage of CPU utilization that needs to occur before the current Mhz begins to lower while screen is OFF.

down_threshold_screen_off_hotplug_1 = 35

A percentage of CPU utilization that needs to occur before the 2nd core is taken offline while screen is OFF.

down_threshold_screen_off_hotplug_2 = 45

A percentage of CPU utilization that needs to occur before the 3rd core is taken offline while screen is OFF.

down_threshold_screen_off_hotplug_3 = 55

A percentage of CPU utilization that needs to occur before the 4th core is taken offline while screen is OFF.

down_threshold_screen_on = 52

A percentage of CPU utilization that needs to occur before the current Mhz begins to lower while screen is ON.

down_threshold_screen_on_hotplug_1 = 35

A percentage of CPU utilization that needs to occur before the 2nd core is taken offline while screen is ON.

down_threshold_screen_on_hotplug_2 = 45

A percentage of CPU utilization that needs to occur before the 3rd core is taken offline while screen is ON.

down_threshold_screen_on_hotplug_3 = 55

A percentage of CPU utilization that needs to occur before the 4th core is taken offline while screen is ON.

freq_step_lower_screen_off = 8

How many steps from the Mhz table (the entire Mhz table can bee seen in the CPU Voltage screen) it skips when lowering the current Mhz while the screen is OFF.

freq_step_lower_screen_on = 2

How many steps from the Mhz table (the entire Mhz table can bee seen in the CPU Voltage screen) it skips when lowering the current Mhz while the screen is ON.

freq_step_raise_screen_off = 1

How many steps from the Mhz table (the entire Mhz table can bee seen in the CPU Voltage screen) it skips when raising the current Mhz while the screen is OFF.

freq_step_raise_screen_on = 5

How many steps from the Mhz table (the entire Mhz table can bee seen in the CPU Voltage screen) it skips when raising the current Mhz while the screen is ON.

ignore_nice_load = 0

If this value is "1," the system will ignore "Nice" processes when deciding to scale up or down. Nice processes are used by the IO scheduler to designate a low-priority process. Ignore nice load basically tells a governor to disregard processes with higher nice values.

lockout_2nd_core_hotplug_screen_off = 0

This is a 3 way option. While the screen is OFF, 0 = Hotplug Normal so the core will go on and off as needed, 1 = Lock this core always ON, 2 = Lock this core always OFF.

lockout_2nd_core_hotplug_screen_on = 0

This is a 3 way option. While the screen is ON, 0 = Hotplug Normal so the core will go on and off as needed, 1 = Lock this core always ON, 2 = Lock this core always OFF.

lockout_3rd_core_hotplug_screen_off = 0

This is a 3 way option. While the screen is OFF, 0 = Hotplug Normal so the core will go on and off as needed, 1 = Lock this core always ON, 2 = Lock this core always OFF.

lockout_3rd_core_hotplug_screen_on = 0

This is a 3 way option. While the screen is ON, 0 = Hotplug Normal so the core will go on and off as needed, 1 = Lock this core always ON, 2 = Lock this core always OFF.

lockout_4th_core_hotplug_screen_off = 0

This is a 3 way option. While the screen is OFF, 0 = Hotplug Normal so the core will go on and off as needed, 1 = Lock this core always ON, 2 = Lock this core always OFF.

lockout_4th_core_hotplug_screen_on = 0

This is a 3 way option. While the screen is ON, 0 = Hotplug Normal so the core will go on and off as needed, 1 = Lock this core always ON, 2 = Lock this core always OFF.

no_extra_cores_screen_off = 1

When set to a 1, this option keeps all extra CPU cores offline while the screen is OFF. 0 lets it hotplug them on and off as needed

sampling_down_factor = 1

NOT USED!

sampling_rate = 45000

The amount of milliseconds that the governor will analyze the CPU usage and adjust for changes in load while the screen is ON.

sampling_rate_min = 10000

READ-ONLY value that specifies the lower value that "sampling_rate" and "sampling_rate_screen_off" will accept.

sampling_rate_screen_off = 45000

The amount of milliseconds that the governor will analyze the CPU usage and adjust for changes in load while the screen is OFF.

super_conservative_screen_off = 0

With the screen OFF: When set to a 1, this option will explicitly obey your block cycles settings to be a super battery saver (Setting a 1 will slow down the UI a little bit). When set to a 0 it uses fuzzy logic on the "block cycle" items.

super_conservative_screen_on = 0

With the screen ON: When set to a 1, this option will explicitly obey your block cycles settings to be a super battery saver (Setting a 1 will slow down the UI a little bit). When set to a 0 it uses fuzzy logic on the "block cycle" items to create a smooooooth UI experience.

sync_extra_cores_screen_off = 0

With the screen OFF: When set to a 1, all online cores will be sync'd to the same speed as core 0. When set to a 0, all cores will operate at speeds independant of each other.

sync_extra_cores_screen_on = 0

With the screen ON: When set to a 1, all online cores will be sync'd to the same speed as core 0. When set to a 0, all cores will operate at speeds independant of each other.

touch_boost_2nd_core = 1

When set to a 1, this option turns on the 2nd core when the screen is touched. When set to a 0 it doesn't do anything extra to the cores.

touch_boost_3rd_core = 0

When set to a 1, this option turns on the 3rd core when the screen is touched. When set to a 0 it doesn't do anything extra to the cores.

touch_boost_4th_core = 0

When set to a 1, this option turns on the 4th core when the screen is touched. When set to a 0 it doesn't do anything extra to the cores.

touch_boost_cpu = 1804800

The Mhz that you want the online CPU's to jump to when the screen is touched.

touch_boost_cpu_all_cores = 0

When set to a 1, this option sets the current Mhz on all online cores to the selected touch_boost_cpu value.

touch_boost_gpu = 462400

This value specifies what Mhz the GPU should jump to when the screen is touched.

up_threshold_screen_off = 57

A percentage of CPU utilization that needs to occur before the current Mhz begins to raise while screen is OFF.

up_threshold_screen_off_hotplug_1 = 58

A percentage of CPU utilization that needs to occur before the 2nd core is put online while screen is OFF.

up_threshold_screen_off_hotplug_2 = 68

A percentage of CPU utilization that needs to occur before the 3rd core is put online while screen is OFF.

up_threshold_screen_off_hotplug_3 = 78

A percentage of CPU utilization that needs to occur before the 4th core is put online while screen is OFF.

up_threshold_screen_on = 57

A percentage of CPU utilization that needs to occur before the current Mhz begins to raise while screen is ON.

up_threshold_screen_on_hotplug_1 = 58

A percentage of CPU utilization that needs to occur before the 2nd core is put online while screen is ON.

up_threshold_screen_on_hotplug_2 = 68

A percentage of CPU utilization that needs to occur before the 3rd core is put online while screen is ON.

up_threshold_screen_on_hotplug_3 = 78

A percentage of CPU utilization that needs to occur before the 4th core is put online while screen is ON.

-Tunasty