Skip to content

Commit ad52c55

Browse files
committed
Merge tag 'pm-6.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
Pull power management updates from Rafael Wysocki: "The amd-pstate cpufreq driver gets the majority of changes this time. They are mostly fixes and cleanups, but one of them causes it to become the default cpufreq driver on some AMD server platforms. Apart from that, the menu cpuidle governor is modified to not use iowait any more, the intel_idle gets a custom C-states table for Granite Rapids Xeon D, and the intel_pstate driver will use a more aggressive Balance- performance default EPP value on Granite Rapids now. There are also some fixes, cleanups and tooling updates. Specifics: - Update the amd-pstate driver to set the initial scaling frequency policy lower bound to be the lowest non-linear frequency (Dhananjay Ugwekar) - Enable amd-pstate by default on servers starting with newer AMD Epyc processors (Swapnil Sapkal) - Align more codepaths between shared memory and MSR designs in amd-pstate (Dhananjay Ugwekar) - Clean up amd-pstate code to rename functions and remove redundant calls (Dhananjay Ugwekar, Mario Limonciello) - Do other assorted fixes and cleanups in amd-pstate (Dhananjay Ugwekar and Mario Limonciello) - Change the Balance-performance EPP value for Granite Rapids in the intel_pstate driver to a more performance-biased one (Srinivas Pandruvada) - Simplify MSR read on the boot CPU in the ACPI cpufreq driver (Chang S. Bae) - Ensure sugov_eas_rebuild_sd() is always called when sugov_init() succeeds to always enforce sched domains rebuild in case EAS needs to be enabled (Christian Loehle) - Switch cpufreq back to platform_driver::remove() (Uwe Kleine-König) - Use proper frequency unit names in cpufreq (Marcin Juszkiewicz) - Add a built-in idle states table for Granite Rapids Xeon D to the intel_idle driver (Artem Bityutskiy) - Fix some typos in comments in the cpuidle core and drivers (Shen Lichuan) - Remove iowait influence from the menu cpuidle governor (Christian Loehle) - Add min/max available performance state limits to the Energy Model management code (Lukasz Luba) - Update pm-graph to v5.13 (Todd Brandt) - Add documentation for some recently introduced cpupower utility options (Tor Vic) - Make cpupower inform users where cpufreq-bench.conf should be located when opening it fails (Peng Fan) - Allow overriding cross-compiling env params in cpupower (Peng Fan) - Add compile_commands.json to .gitignore in cpupower (John B. Wyatt IV) - Improve disable c_state block in cpupower bindings and add a test to confirm that CPU state is disabled to it (John B. Wyatt IV) - Add Chinese Simplified translation to cpupower (Kieran Moy) - Add checks for xgettext and msgfmt to cpupower (Siddharth Menon)" * tag 'pm-6.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (38 commits) cpufreq: intel_pstate: Update Balance-performance EPP for Granite Rapids cpufreq: ACPI: Simplify MSR read on the boot CPU sched/cpufreq: Ensure sd is rebuilt for EAS check intel_idle: add Granite Rapids Xeon D support PM: EM: Add min/max available performance state limits cpufreq/amd-pstate: Move registration after static function call update cpufreq/amd-pstate: Push adjust_perf vfunc init into cpu_init cpufreq/amd-pstate: Align offline flow of shared memory and MSR based systems cpufreq/amd-pstate: Call cppc_set_epp_perf in the reenable function cpufreq/amd-pstate: Do not attempt to clear MSR_AMD_CPPC_ENABLE cpufreq/amd-pstate: Rename functions that enable CPPC cpufreq/amd-pstate-ut: Add fix for min freq unit test amd-pstate: Switch to amd-pstate by default on some Server platforms amd-pstate: Set min_perf to nominal_perf for active mode performance gov cpufreq/amd-pstate: Remove the redundant amd_pstate_set_driver() call cpufreq/amd-pstate: Remove the switch case in amd_pstate_init() cpufreq/amd-pstate: Call amd_pstate_set_driver() in amd_pstate_register_driver() cpufreq/amd-pstate: Call amd_pstate_register() in amd_pstate_init() cpufreq/amd-pstate: Set the initial min_freq to lowest_nonlinear_freq cpufreq/amd-pstate: Remove the redundant verify() function ...
2 parents 8a7fa81 + c6e2a4c commit ad52c55

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+1330
-278
lines changed

drivers/cpufreq/acpi-cpufreq.c

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -73,20 +73,17 @@ static unsigned int acpi_pstate_strict;
7373

7474
static bool boost_state(unsigned int cpu)
7575
{
76-
u32 lo, hi;
7776
u64 msr;
7877

7978
switch (boot_cpu_data.x86_vendor) {
8079
case X86_VENDOR_INTEL:
8180
case X86_VENDOR_CENTAUR:
8281
case X86_VENDOR_ZHAOXIN:
83-
rdmsr_on_cpu(cpu, MSR_IA32_MISC_ENABLE, &lo, &hi);
84-
msr = lo | ((u64)hi << 32);
82+
rdmsrl_on_cpu(cpu, MSR_IA32_MISC_ENABLE, &msr);
8583
return !(msr & MSR_IA32_MISC_ENABLE_TURBO_DISABLE);
8684
case X86_VENDOR_HYGON:
8785
case X86_VENDOR_AMD:
88-
rdmsr_on_cpu(cpu, MSR_K7_HWCR, &lo, &hi);
89-
msr = lo | ((u64)hi << 32);
86+
rdmsrl_on_cpu(cpu, MSR_K7_HWCR, &msr);
9087
return !(msr & MSR_K7_HWCR_CPB_DIS);
9188
}
9289
return false;
@@ -1028,7 +1025,7 @@ static struct platform_driver acpi_cpufreq_platdrv = {
10281025
.driver = {
10291026
.name = "acpi-cpufreq",
10301027
},
1031-
.remove_new = acpi_cpufreq_remove,
1028+
.remove = acpi_cpufreq_remove,
10321029
};
10331030

10341031
static int __init acpi_cpufreq_init(void)

drivers/cpufreq/amd-pstate-ut.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -227,10 +227,10 @@ static void amd_pstate_ut_check_freq(u32 index)
227227
goto skip_test;
228228
}
229229

230-
if (cpudata->min_freq != policy->min) {
230+
if (cpudata->lowest_nonlinear_freq != policy->min) {
231231
amd_pstate_ut_cases[index].result = AMD_PSTATE_UT_RESULT_FAIL;
232-
pr_err("%s cpu%d cpudata_min_freq=%d policy_min=%d, they should be equal!\n",
233-
__func__, cpu, cpudata->min_freq, policy->min);
232+
pr_err("%s cpu%d cpudata_lowest_nonlinear_freq=%d policy_min=%d, they should be equal!\n",
233+
__func__, cpu, cpudata->lowest_nonlinear_freq, policy->min);
234234
goto skip_test;
235235
}
236236

0 commit comments

Comments
 (0)