Skip to content

Commit ec8e7a0

Browse files
author
Abhinav Jhanwar
committed
cpufreq:Add abyssplug governor
1 parent 7b492c5 commit ec8e7a0

File tree

7 files changed

+845
-0
lines changed

7 files changed

+845
-0
lines changed

arch/arm/configs/xperiago_defconfig

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -511,6 +511,7 @@ CONFIG_CPU_FREQ_DEFAULT_GOV_LIONHEART=y
511511
# CONFIG_CPU_FREQ_DEFAULT_GOV_NIGHTMARE is not set
512512
# CONFIG_CPU_FREQ_DEFAULT_GOV_SAKURACTIVE is not set
513513
# CONFIG_CPU_FREQ_DEFAULT_GOV_WHEATLEY is not set
514+
# CONFIG_CPU_FREQ_DEFAULT_GOV_ABYSSPLUG is not set
514515
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
515516
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
516517
CONFIG_CPU_FREQ_GOV_USERSPACE=y
@@ -529,6 +530,7 @@ CONFIG_CPU_FREQ_GOV_LIONHEART=y
529530
CONFIG_CPU_FREQ_GOV_NIGHTMARE=y
530531
CONFIG_CPU_FREQ_GOV_SAKURACTIVE=y
531532
CONFIG_CPU_FREQ_GOV_WHEATLEY=y
533+
CONFIG_CPU_FREQ_GOV_ABYSSPLUG=y
532534
CONFIG_CPU_IDLE=y
533535
CONFIG_CPU_IDLE_GOV_LADDER=y
534536
CONFIG_CPU_IDLE_GOV_MENU=y

arch/arm/configs/xperiap_defconfig

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -511,6 +511,7 @@ CONFIG_CPU_FREQ_DEFAULT_GOV_LIONHEART=y
511511
# CONFIG_CPU_FREQ_DEFAULT_GOV_NIGHTMARE is not set
512512
# CONFIG_CPU_FREQ_DEFAULT_GOV_SAKURACTIVE is not set
513513
# CONFIG_CPU_FREQ_DEFAULT_GOV_WHEATLEY is not set
514+
# CONFIG_CPU_FREQ_DEFAULT_GOV_ABYSSPLUG is not set
514515
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
515516
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
516517
CONFIG_CPU_FREQ_GOV_USERSPACE=y
@@ -529,6 +530,7 @@ CONFIG_CPU_FREQ_GOV_LIONHEART=y
529530
CONFIG_CPU_FREQ_GOV_NIGHTMARE=y
530531
CONFIG_CPU_FREQ_GOV_SAKURACTIVE=y
531532
CONFIG_CPU_FREQ_GOV_WHEATLEY=y
533+
CONFIG_CPU_FREQ_GOV_ABYSSPLUG=y
532534
CONFIG_CPU_IDLE=y
533535
CONFIG_CPU_IDLE_GOV_LADDER=y
534536
CONFIG_CPU_IDLE_GOV_MENU=y

arch/arm/configs/xperiasola_defconfig

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -511,6 +511,7 @@ CONFIG_CPU_FREQ_DEFAULT_GOV_LIONHEART=y
511511
# CONFIG_CPU_FREQ_DEFAULT_GOV_NIGHTMARE is not set
512512
# CONFIG_CPU_FREQ_DEFAULT_GOV_SAKURACTIVE is not set
513513
# CONFIG_CPU_FREQ_DEFAULT_GOV_WHEATLEY is not set
514+
# CONFIG_CPU_FREQ_DEFAULT_GOV_ABYSSPLUG is not set
514515
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
515516
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
516517
CONFIG_CPU_FREQ_GOV_USERSPACE=y
@@ -529,6 +530,7 @@ CONFIG_CPU_FREQ_GOV_LIONHEART=y
529530
CONFIG_CPU_FREQ_GOV_NIGHTMARE=y
530531
CONFIG_CPU_FREQ_GOV_SAKURACTIVE=y
531532
CONFIG_CPU_FREQ_GOV_WHEATLEY=y
533+
CONFIG_CPU_FREQ_GOV_ABYSSPLUG=y
532534
CONFIG_CPU_IDLE=y
533535
CONFIG_CPU_IDLE_GOV_LADDER=y
534536
CONFIG_CPU_IDLE_GOV_MENU=y

arch/arm/configs/xperiau_defconfig

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -511,6 +511,7 @@ CONFIG_CPU_FREQ_DEFAULT_GOV_LIONHEART=y
511511
# CONFIG_CPU_FREQ_DEFAULT_GOV_NIGHTMARE is not set
512512
# CONFIG_CPU_FREQ_DEFAULT_GOV_SAKURACTIVE is not set
513513
# CONFIG_CPU_FREQ_DEFAULT_GOV_WHEATLEY is not set
514+
# CONFIG_CPU_FREQ_DEFAULT_GOV_ABYSSPLUG is not set
514515
CONFIG_CPU_FREQ_GOV_PERFORMANCE=y
515516
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
516517
CONFIG_CPU_FREQ_GOV_USERSPACE=y
@@ -529,6 +530,7 @@ CONFIG_CPU_FREQ_GOV_LIONHEART=y
529530
CONFIG_CPU_FREQ_GOV_NIGHTMARE=y
530531
CONFIG_CPU_FREQ_GOV_SAKURACTIVE=y
531532
CONFIG_CPU_FREQ_GOV_WHEATLEY=y
533+
CONFIG_CPU_FREQ_GOV_ABYSSPLUG=y
532534
CONFIG_CPU_IDLE=y
533535
CONFIG_CPU_IDLE_GOV_LADDER=y
534536
CONFIG_CPU_IDLE_GOV_MENU=y

drivers/cpufreq/Kconfig

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -172,8 +172,29 @@ config CPU_FREQ_DEFAULT_GOV_WHEATLEY
172172
select CPU_FREQ_GOV_PERFORMANCE
173173
help
174174
Use the CPUFreq governor 'wheatley' as default.
175+
176+
config CPU_FREQ_DEFAULT_GOV_ABYSSPLUG
177+
bool "abyssplug"
178+
select CPU_FREQ_GOV_ABYSSPLUG
179+
help
180+
Use the CPUFreq governor 'abyssplug' as default.
175181

176182
endchoice
183+
184+
config CPU_FREQ_GOV_ABYSSPLUG
185+
tristate "'abyssplug' cpufreq governor"
186+
depends on CPU_FREQ
187+
help
188+
'abyssplug' - this driver mimics the frequency scaling behavior
189+
in 'ondemand', but with several key differences. First is
190+
that frequency transitions use the CPUFreq table directly,
191+
instead of incrementing in a percentage of the maximum
192+
available frequency. Second 'abyssplug' will offline auxillary
193+
CPUs when the system is idle, and online those CPUs once the
194+
system becomes busy again. This last feature is needed for
195+
architectures which transition to low power states when only
196+
the "master" CPU is online, or for thermally constrained
197+
devices.
177198

178199
config CPU_FREQ_GOV_WHEATLEY
179200
tristate "'wheatley' cpufreq governor"

drivers/cpufreq/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ obj-$(CONFIG_CPU_FREQ_GOV_LULZACTIVEQ) += axperiau_lulzactiveq.o
1717
obj-$(CONFIG_CPU_FREQ_GOV_ONDEMANDAX) += axperiau_ondemandax.o
1818
obj-$(CONFIG_CPU_FREQ_GOV_PEGASUSQ) += axperiau_pegasusq.o
1919
obj-$(CONFIG_CPU_FREQ_GOV_WHEATLEY) += cpufreq_wheatley.o
20+
obj-$(CONFIG_CPU_FREQ_GOV_ABYSSPLUG) += cpufreq_abyssplug.o
2021
obj-$(CONFIG_CPU_FREQ_GOV_SAKURACTIVE) += cpufreq_sakuractive.o
2122
obj-$(CONFIG_CPU_FREQ_GOV_NIGHTMARE) += cpufreq_nightmare.o
2223
obj-$(CONFIG_CPU_FREQ_GOV_LIONHEART) += cpufreq_lionheart.o

0 commit comments

Comments
 (0)