diff options
author | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2020-10-05 13:12:02 +0200 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2020-10-05 13:12:02 +0200 |
commit | fccd2f0e629b357437bebc015810f7f1957a4643 (patch) | |
tree | 4d0cc002fb0e0d487e66d205f115737f37933b98 /arch/arm64/kernel | |
parent | fc7d17551f776fda243493ce59894c1eec2a339f (diff) | |
parent | 15e5d5b45b2b7072214af519357a1c0af078c50b (diff) |
Merge back cpufreq material for 5.10.
Diffstat (limited to 'arch/arm64/kernel')
-rw-r--r-- | arch/arm64/kernel/topology.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/arch/arm64/kernel/topology.c b/arch/arm64/kernel/topology.c index 0801a0f3c156..4064d39bb66d 100644 --- a/arch/arm64/kernel/topology.c +++ b/arch/arm64/kernel/topology.c @@ -246,6 +246,13 @@ static int __init init_amu_fie(void) static_branch_enable(&amu_fie_key); } + /* + * If the system is not fully invariant after AMU init, disable + * partial use of counters for frequency invariance. + */ + if (!topology_scale_freq_invariant()) + static_branch_disable(&amu_fie_key); + free_valid_mask: free_cpumask_var(valid_cpus); @@ -253,7 +260,7 @@ free_valid_mask: } late_initcall_sync(init_amu_fie); -bool arch_freq_counters_available(struct cpumask *cpus) +bool arch_freq_counters_available(const struct cpumask *cpus) { return amu_freq_invariant() && cpumask_subset(cpus, amu_fie_cpus); |