diff --git a/drivers/cpuquiet/Kconfig b/drivers/cpuquiet/Kconfig index 61e707312ad7..a2025baedf41 100644 --- a/drivers/cpuquiet/Kconfig +++ b/drivers/cpuquiet/Kconfig @@ -10,28 +10,62 @@ config CPUQUIET_FRAMEWORK if CPUQUIET_FRAMEWORK +config CPUQUIET_GOVERNOR_USERSPACE + bool "userspace" + default y + help + Manual control of the number of CPUs online. + This governor allows userspace to control the number of online CPUs. + + If in doubt say Y. + +config CPUQUIET_GOVERNOR_BALANCED + bool "balanced" + default y + depends on CPU_FREQ + help + Scale the number of CPUs online depending on the CPU load. + This governor will scale the number of CPUs online depending on the + CPU load and the number of runnable threads. + + If in doubt say Y. + +config CPUQUIET_GOVERNOR_RUNNABLE + bool "runnable threads" + default y + help + Scale the number of CPUs online depending on the number of runnable + threads. This governor will scale the number of CPUs online depending + on the number of runnable threads. + + If in doubt say Y. + choice prompt "Default CPUQuiet governor" + default CPUQUIET_DEFAULT_GOV_USERSPACE help This option sets which CPUQuiet governor shall be loaded at - startup. If in doubt, select 'userspace' + startup. If in doubt, select 'userspace'. config CPUQUIET_DEFAULT_GOV_USERSPACE bool "userspace" select CPUQUIET_GOVERNOR_USERSPACE help - Use the CPUQuiet governor 'userspace' as default. This disables - any automatic hotplugging of cpus and allows manual control - over the number of cpus online in the system + Use the CPUQuiet governor 'userspace' as default. config CPUQUIET_DEFAULT_GOV_BALANCED bool "balanced" select CPUQUIET_GOVERNOR_BALANCED depends on CPU_FREQ help - Use the CPUQuiet governor 'balanced' as default. This dynamically - scales the number of cpus online in the system based on the cpu - load + Use the CPUQuiet governor 'balanced' as default. + +config CPUQUIET_DEFAULT_GOV_RUNNABLE + bool "runnable threads" + select CPUQUIET_GOVERNOR_RUNNABLE + help + Use the CPUQuiet governor 'runnable threads' as default. + endchoice endif diff --git a/drivers/cpuquiet/governors/Makefile b/drivers/cpuquiet/governors/Makefile index e199d73008f1..ad1a414447cf 100644 --- a/drivers/cpuquiet/governors/Makefile +++ b/drivers/cpuquiet/governors/Makefile @@ -1 +1,3 @@ -obj-y += userspace.o balanced.o runnable_threads.o +obj-$(CONFIG_CPUQUIET_GOVERNOR_USERSPACE) += userspace.o +obj-$(CONFIG_CPUQUIET_GOVERNOR_BALANCED) += balanced.o +obj-$(CONFIG_CPUQUIET_GOVERNOR_RUNNABLE) += runnable_threads.o