Skip to content

Commit

Permalink
linux-raspberrypi: stop setting powersave as the default CPU governor
Browse files Browse the repository at this point in the history
* The defconfigs from the RPi Kernel set `powersave` as the default
  CPU governor, which is a bad idea as that reduces performance by
  setting the CPU frequency to the minimum one.

* In case of a Yocto build user-space is not configured by default
  to change the CPU governor, so `powersave` will remain the CPU
  governor and it will slow down everything.

* I submitted a fix for those defconfigs to upstream here:
  raspberrypi/linux#5666
  However, we shouldn't wait until that is accepted and backported
  to all the stable branches (if ever is).

* This patch unsets the selection of `powersave` as the default CPU
  governor.

* Then the CPU governor that will be selected as default after this
  patch will be the Linux's default one that is either `ondemand` or
  `schedutil` depending on the Kernel version.

Signed-off-by: Carlos Alberto Lopez Perez <[email protected]>
  • Loading branch information
clopez committed Oct 20, 2023
1 parent 482d864 commit 22a28b0
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 0 deletions.
9 changes: 9 additions & 0 deletions recipes-kernel/linux/files/default-cpu-governor.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# The defconfigs from the RPi Kernel set "powersave" as the default CPU governor.
# That is a bad idea as it reduces performance, so we unset that default option here.
# The option to build the powersave governor (but not as the default) is also enabled.
# A fix for this was sent to upstream: https://github.com/raspberrypi/linux/pull/5666
# However, we need to carry this option override until those defconfigs are fixed on
# *all* the kernel branches that we support. So that can be a long time depending
# on wheter the above PR gets accepted and/or backported to the stable branches.
CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE=n
CONFIG_CPU_FREQ_GOV_POWERSAVE=y
1 change: 1 addition & 0 deletions recipes-kernel/linux/linux-raspberrypi.inc
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ SRC_URI += " \
${@bb.utils.contains("INITRAMFS_IMAGE_BUNDLE", "1", "file://initramfs-image-bundle.cfg", "", d)} \
${@bb.utils.contains("MACHINE_FEATURES", "vc4graphics", "file://vc4graphics.cfg", "", d)} \
${@bb.utils.contains("MACHINE_FEATURES", "wm8960", "file://wm8960.cfg", "", d)} \
file://default-cpu-governor.cfg \
"

SRC_URI:append:raspberrypi4 = " \
Expand Down

0 comments on commit 22a28b0

Please sign in to comment.