hispeed_freq according to load as usual.
-2.7 Hotplug
------------
-
-The CPUfreq governor "hotplug" operates similary to "ondemand" and
-"conservative". It's decisions are based primarily on CPU load. Like
-"ondemand" the "hotplug" governor will ramp up to the highest frequency
-once the run-time tunable "up_threshold" parameter is crossed. Like
-"conservative", the "hotplug" governor exports a "down_threshold"
-parameter that is also tunable at run-time. When the "down_threshold"
-is crossed the CPU transitions to the next lowest frequency in the
-CPUfreq frequency table instead of decrementing the frequency based on a
-percentage of maximum load.
-
-The main reason "hotplug" governor exists is for architectures requiring
-that only the master CPU be online in order to hit low-power states
-(C-states). OMAP4 is one such example of this. The "hotplug" governor
-is also helpful in reducing thermal output in devices with tight thermal
-constraints.
-
-Auxillary CPUs are onlined/offline based on CPU load, but the decision
-to do so is made after averaging several sampling windows. This is to
-reduce CPU hotplug "thrashing", which can be caused by normal system
-entropy and leads to lots of spurious plug-in and plug-out transitions.
-The number of sampling periods averaged together is tunable via the
-"hotplug_in_sampling_periods" and "hotplug_out_sampling_periods"
-run-time tunable parameters.
-
3. The Governor Interface in the CPUfreq Core
=============================================
loading your cpufreq low-level hardware driver, using the
'interactive' governor for latency-sensitive workloads.
-config CPU_FREQ_DEFAULT_GOV_HOTPLUG
- bool "hotplug"
- select CPU_FREQ_GOV_HOTPLUG
- select CPU_FREQ_GOV_PERFORMANCE
- help
- Use the CPUFreq governor 'hotplug' as default. This allows you
- to get a full dynamic frequency capable system with CPU
- hotplug support by simply loading your cpufreq low-level
- hardware driver. Be aware that not all cpufreq drivers
- support the hotplug governor. If unsure have a look at
- the help section of the driver. Fallback governor will be the
- performance governor.
-
endchoice
config CPU_FREQ_GOV_PERFORMANCE
source "drivers/cpufreq/Kconfig.x86"
endmenu
-config CPU_FREQ_GOV_HOTPLUG
- tristate "'hotplug' cpufreq governor"
- depends on CPU_FREQ && NO_HZ && HOTPLUG_CPU
- help
- 'hotplug' - this driver mimics the frequency scaling behavior
- in 'ondemand', but with several key differences. First is
- that frequency transitions use the CPUFreq table directly,
- instead of incrementing in a percentage of the maximum
- available frequency. Second 'hotplug' will offline auxillary
- CPUs when the system is idle, and online those CPUs once the
- system becomes busy again. This last feature is needed for
- architectures which transition to low power states when only
- the "master" CPU is online, or for thermally constrained
- devices.
-
- If you don't have one of these architectures or devices, use
- 'ondemand' instead.
-
- If in doubt, say N.
-
endif
endmenu
obj-$(CONFIG_CPU_FREQ_GOV_ONDEMAND) += cpufreq_ondemand.o
obj-$(CONFIG_CPU_FREQ_GOV_CONSERVATIVE) += cpufreq_conservative.o
obj-$(CONFIG_CPU_FREQ_GOV_INTERACTIVE) += cpufreq_interactive.o
-obj-$(CONFIG_CPU_FREQ_GOV_HOTPLUG) += cpufreq_hotplug.o
# CPUfreq cross-arch helpers
obj-$(CONFIG_CPU_FREQ_TABLE) += freq_table.o
#elif defined(CONFIG_CPU_FREQ_DEFAULT_GOV_INTERACTIVE)
extern struct cpufreq_governor cpufreq_gov_interactive;
#define CPUFREQ_DEFAULT_GOVERNOR (&cpufreq_gov_interactive)
-#elif defined(CONFIG_CPU_FREQ_DEFAULT_GOV_HOTPLUG)
-extern struct cpufreq_governor cpufreq_gov_hotplug;
-#define CPUFREQ_DEFAULT_GOVERNOR (&cpufreq_gov_hotplug)
#endif