]> Git Repo - linux.git/commitdiff
cpufreq: Select schedutil when using big.LITTLE
authorLinus Walleij <[email protected]>
Thu, 2 Apr 2020 08:02:39 +0000 (10:02 +0200)
committerRafael J. Wysocki <[email protected]>
Fri, 3 Apr 2020 09:20:06 +0000 (11:20 +0200)
When we are using a system with big.LITTLE HMP
configuration, we need to use EAS to schedule the
system.

As can be seen from kernel/sched/topology.c:

 "EAS can be used on a root domain if it meets all the following conditions:
  1. an Energy Model (EM) is available;
  2. the SD_ASYM_CPUCAPACITY flag is set in the sched_domain hierarchy.
  3. no SMT is detected.
  4. the EM complexity is low enough to keep scheduling overheads low;
  5. schedutil is driving the frequency of all CPUs of the rd;"

This means that at the very least, schedutil needs to be
available as a scheduling policy for EAS to work on these
systems. Make this explicit by defaulting to the schedutil
governor if BIG_LITTLE is selected.

Currently users of the TC2 board (like me) has to figure these
dependencies out themselves and it is not helpful.

Suggested-by: Arnd Bergmann <[email protected]>
Signed-off-by: Linus Walleij <[email protected]>
Acked-by: Sudeep Holla <[email protected]>
Acked-by: Viresh Kumar <[email protected]>
Signed-off-by: Rafael J. Wysocki <[email protected]>
drivers/cpufreq/Kconfig

index 9f0e7e79ed14d89a4b26faf3eb5e67e04f21d046..c3e6bd59e920882268c695ef03b02d800978e963 100644 (file)
@@ -37,6 +37,7 @@ config CPU_FREQ_STAT
 choice
        prompt "Default CPUFreq governor"
        default CPU_FREQ_DEFAULT_GOV_USERSPACE if ARM_SA1100_CPUFREQ || ARM_SA1110_CPUFREQ
+       default CPU_FREQ_DEFAULT_GOV_SCHEDUTIL if BIG_LITTLE
        default CPU_FREQ_DEFAULT_GOV_SCHEDUTIL if X86_INTEL_PSTATE && SMP
        default CPU_FREQ_DEFAULT_GOV_PERFORMANCE
        help
This page took 0.052757 seconds and 4 git commands to generate.