Initial SPH-L710 JB Source
/drivers/cpufreq/Kconfig
blob:46fb51d7f4e82c24bc4188007e14764a4f576fb3 -> blob:121ac55f1f0511a5c37bd1b3cc5faf372c7cbd9e
--- drivers/cpufreq/Kconfig
+++ drivers/cpufreq/Kconfig
@@ -17,6 +17,44 @@ config CPU_FREQ
if CPU_FREQ
+if ARCH_MSM
+
+config CPU_FREQ_MIN_SCALING_LIMIT
+ int "Min CPU Scaling Frequency Limit"
+ depends on CPU_FREQ
+ default 384000
+
+config CPU_FREQ_MAX_SCALING_LIMIT
+ int "Max CPU Scaling Frequency Limit"
+ depends on CPU_FREQ
+ default 1900000
+
+config MSM_VMIN
+ int "VMIN used for acpuclock"
+ default 900000
+ depends on CPU_FREQ
+
+config CPU_FREQ_MAX_VDD_SC
+ int "Max CPU VDD SC uV"
+ depends on CPU_FREQ
+ default 1400000
+
+config CPU_FREQ_MIN_VDD_SC
+ int "Min CPU VDD SC uV"
+ depends on CPU_FREQ
+ default 850000
+
+config CPU_FREQ_MSM_DCVS_CPU1_DELAY
+ int "Delay prior to initializing dcvs for cpu1 (ms)"
+ depends on CPU_FREQ
+ default 1000
+ help
+ The MSM-DCVS governor sometimes does not register
+ the second cpu, cpu1, correctly. This delay gives
+ cpu1 additional time to become ready prior to registering
+
+endif
+
config CPU_FREQ_TABLE
tristate
@@ -100,6 +138,19 @@ config CPU_FREQ_DEFAULT_GOV_CONSERVATIVE
governor. If unsure have a look at the help section of the
driver. Fallback governor will be the performance governor.
+
+config CPU_FREQ_DEFAULT_GOV_LAGFREE
+ bool "lagfree"
+ select CPU_FREQ_GOV_LAGFREE
+ select CPU_FREQ_GOV_PERFORMANCE
+ help
+ Use the CPUFreq governor 'lagfree' as default. This allows
+ you to get a full dynamic frequency capable system by simply
+ loading your cpufreq low-level hardware driver.
+ Be aware that not all cpufreq drivers support the lagfree
+ governor. If unsure have a look at the help section of the
+ driver. Fallback governor will be the performance governor.
+
config CPU_FREQ_DEFAULT_GOV_INTERACTIVE
bool "interactive"
select CPU_FREQ_GOV_INTERACTIVE
@@ -109,6 +160,12 @@ config CPU_FREQ_DEFAULT_GOV_INTERACTIVE
loading your cpufreq low-level hardware driver, using the
'interactive' governor for latency-sensitive workloads.
+config CPU_FREQ_DEFAULT_GOV_SMARTASSV2
+ bool "smartassv2"
+ select CPU_FREQ_GOV_SMARTASSV2
+ help
+ Use the CPUFreq governor 'smartassV2' as default.
+
endchoice
config CPU_FREQ_GOV_PERFORMANCE
@@ -206,11 +263,173 @@ config CPU_FREQ_GOV_CONSERVATIVE
If in doubt, say N.
+config CPU_FREQ_GOV_LAGFREE
+ tristate "'lagfree' cpufreq governor"
+ depends on CPU_FREQ
+ help
+ 'lagfree' - this driver is rather similar to the 'ondemand'
+ governor both in its source code and its purpose, the difference is
+ its optimisation for better suitability in a battery powered
+ environment. The frequency is gracefully increased and decreased
+ rather than jumping to 100% when speed is required.
+
+config LAGFREE_MAX_LOAD
+ int "Max CPU Load"
+ default 50
+ depends on CPU_FREQ_GOV_LAGFREE
+ help
+ CPU freq will be increased if measured load > max_cpu_load;
+
+config LAGFREE_MIN_LOAD
+ int "Min CPU Load"
+ default 15
+ depends on CPU_FREQ_GOV_LAGFREE
+ help
+ CPU freq will be decrease if measured load < min_cpu_load;
+
+config LAGFREE_FREQ_STEP_DOWN
+ int "Frequency Step Down"
+ default 108000
+ depends on CPU_FREQ_GOV_LAGFREE
+ help
+ Max freqeuncy delta when ramping down.
+
+config LAGFREE_FREQ_SLEEP_MAX
+ int "Max Sleep frequeny"
+ default 384000
+ depends on CPU_FREQ_GOV_LAGFREE
+ help
+ Max freqeuncy for screen off.
+
+config LAGFREE_FREQ_AWAKE_MIN
+ int "Min Awake frequeny"
+ default 384000
+ depends on CPU_FREQ_GOV_LAGFREE
+ help
+ Min freqeuncy for screen on.
+
+config LAGFREE_FREQ_STEP_UP_SLEEP_PERCENT
+ int "Freq step up percent sleep"
+ default 20
+ depends on CPU_FREQ_GOV_LAGFREE
+ help
+ Frequency percent to step up while screen off.
+
+config CPU_FREQ_GOV_SMARTASSV2
+ tristate "'smartassV2' cpufreq governor"
+ depends on CPU_FREQ
+ help
+ 'smartassV2' - a "smart" governor
+ If in doubt, say N.
+
+config SMARTASSV2_AWAKE_IDEAL_FREQ
+ int "The ideal frequency to use when awake."
+ default 1026000
+ depends on CPU_FREQ_GOV_SMARTASSV2
+ help
+ The "ideal" frequency to use when awake. The governor will ramp up faster
+ towards the ideal frequency and slower after it has passed it. Similarly,
+ lowering the frequency towards the ideal frequency is faster than below it.
+
+config SMARTASSV2_SLEEP_IDEAL_FREQ
+ int "The ideal frequency to use when suspended."
+ default 0
+ depends on CPU_FREQ_GOV_SMARTASSV2
+ help
+ The "ideal" frequency to use when suspended.
+ When set to 0, the governor will not track the suspended state (meaning
+ that practically when sleep_ideal_freq==0 the awake_ideal_freq is used
+ also when suspended).
+
+config SMARTASSV2_RAMP_UP_STEP
+ int "Freqeuncy delta when ramping up above the ideal freqeuncy."
+ default 256000
+ depends on CPU_FREQ_GOV_SMARTASSV2
+ help
+ Freqeuncy delta when ramping up above the ideal freqeuncy.
+ Zero disables and causes to always jump straight to max frequency.
+ When below the ideal freqeuncy we always ramp up to the ideal freq.
+
+config SMARTASSV2_RAMP_DOWN_STEP
+ int "Freqeuncy delta when ramping down below the ideal freqeuncy."
+ default 256000
+ depends on CPU_FREQ_GOV_SMARTASSV2
+ help
+ Freqeuncy delta when ramping down below the ideal freqeuncy.
+ Zero disables and will calculate ramp down according to load heuristic.
+ When above the ideal freqeuncy we always ramp down to the ideal freq.
+
+config SMARTASSV2_MAX_CPU_LOAD
+ int "CPU freq will be increased if measured load > max_cpu_load."
+ default 50
+ depends on CPU_FREQ_GOV_SMARTASSV2
+ help
+ CPU freq will be increased if measured load > max_cpu_load.
+
+config SMARTASSV2_MIN_CPU_LOAD
+ int "CPU freq will be decreased if measured load < max_cpu_load."
+ default 25
+ depends on CPU_FREQ_GOV_SMARTASSV2
+ help
+ CPU freq will be decreased if measured load < max_cpu_load.
+
+config SMARTASSV2_UP_RATE_US
+ int "The minimum amount of time to spend at a frequency before we can ramp up."
+ default 48000
+ depends on CPU_FREQ_GOV_SMARTASSV2
+ help
+ The minimum amount of time to spend at a frequency before we can ramp up.
+ Notice we ignore this when we are below the ideal frequency.
+
+config SMARTASSV2_DOWN_RATE_US
+ int "The minimum amount of time to spend at a frequency before we can ramp down."
+ default 99000
+ depends on CPU_FREQ_GOV_SMARTASSV2
+ help
+ The minimum amount of time to spend at a frequency before we can ramp down.
+ Notice we ignore this when we are below the ideal frequency.
+
+config SMARTASSV2_SLEEP_WAKEUP_FREQ
+ int "The frequency to set when waking up from sleep."
+ default 99999999
+ depends on CPU_FREQ_GOV_SMARTASSV2
+ help
+ The frequency to set when waking up from sleep.
+ When sleep_ideal_freq=0 this will have no effect.
+
+config SMARTASSV2_SAMPLE_RATE_JIFFIES
+ int "Sampling rate."
+ default 2
+ depends on CPU_FREQ_GOV_SMARTASSV2
+ help
+ Sampling rate, I highly recommend to leave it at 2.
+
+config CPU_FREQ_MIN_TICKS
+ int "Ticks between governor polling interval."
+ default 10
+ help
+ Minimum number of ticks between polling interval for governors.
+
+config CPU_FREQ_SAMPLING_LATENCY_MULTIPLIER
+ int "Sampling rate multiplier for governors."
+ default 1000
+ help
+ Sampling latency rate multiplied by the cpu switch latency.
+ Affects governor polling.
+
config SEC_DVFS
bool "DVFS job"
default n
depends on CPU_FREQ
+config VDD_USERSPACE
+ bool "VDD sysfs interface"
+ default n
+ depends on CPU_FREQ_STAT
+ help
+ exposes the VDD table to userspace
+ allows users to adjust voltages on the fly
+
menu "x86 CPU frequency scaling drivers"
depends on X86
source "drivers/cpufreq/Kconfig.x86"