|
@@ -562,12 +562,12 @@ static void intel_pstate_hwp_set(const struct cpumask *cpumask)
|
|
|
int min, hw_min, max, hw_max, cpu, range, adj_range;
|
|
|
u64 value, cap;
|
|
|
|
|
|
- rdmsrl(MSR_HWP_CAPABILITIES, cap);
|
|
|
- hw_min = HWP_LOWEST_PERF(cap);
|
|
|
- hw_max = HWP_HIGHEST_PERF(cap);
|
|
|
- range = hw_max - hw_min;
|
|
|
-
|
|
|
for_each_cpu(cpu, cpumask) {
|
|
|
+ rdmsrl_on_cpu(cpu, MSR_HWP_CAPABILITIES, &cap);
|
|
|
+ hw_min = HWP_LOWEST_PERF(cap);
|
|
|
+ hw_max = HWP_HIGHEST_PERF(cap);
|
|
|
+ range = hw_max - hw_min;
|
|
|
+
|
|
|
rdmsrl_on_cpu(cpu, MSR_HWP_REQUEST, &value);
|
|
|
adj_range = limits->min_perf_pct * range / 100;
|
|
|
min = hw_min + adj_range;
|