[PATCH v4 00/19] amd-pstate cleanups

Mario Limonciello
2025-02-19T21:03:17Z

This series overhauls locking and drops many unnecessarily cached
variables.

Debugging messages are also dropped in favor of more ftracing.

This series is based off superm1/linux.git bleeding-edge branch.

v3->v4:
* Cleanups from v3 feedback
* One new patch to drop unnecessary extra call for setting perf on cpu
offline

Mario Limonciello (19):
cpufreq/amd-pstate: Invalidate cppc_req_cached during suspend
cpufreq/amd-pstate: Show a warning when a CPU fails to setup
cpufreq/amd-pstate: Drop min and max cached frequencies
cpufreq/amd-pstate: Move perf values into a union
cpufreq/amd-pstate: Overhaul locking
cpufreq/amd-pstate: Drop `cppc_cap1_cached`
cpufreq/amd-pstate-ut: Use _free macro to free put policy
cpufreq/amd-pstate-ut: Allow lowest nonlinear and lowest to be the
same
cpufreq/amd-pstate-ut: Drop SUCCESS and FAIL enums
cpufreq/amd-pstate-ut: Run on all of the correct CPUs
cpufreq/amd-pstate-ut: Adjust variable scope for
amd_pstate_ut_check_freq()
cpufreq/amd-pstate: Replace all AMD_CPPC_* macros with masks
cpufreq/amd-pstate: Cache CPPC request in shared mem case too
cpufreq/amd-pstate: Move all EPP tracing into *_update_perf and
*_set_epp functions
cpufreq/amd-pstate: Update cppc_req_cached for shared mem EPP writes
cpufreq/amd-pstate: Drop debug statements for policy setting
cpufreq/amd-pstate: Rework CPPC enabling
cpufreq/amd-pstate: Stop caching EPP
cpufreq/amd-pstate: Drop amd_pstate_epp_cpu_offline()

arch/x86/include/asm/msr-index.h | 20 +-
arch/x86/kernel/acpi/cppc.c | 4 +-
drivers/cpufreq/amd-pstate-trace.h | 13 +-
drivers/cpufreq/amd-pstate-ut.c | 209 +++++------
drivers/cpufreq/amd-pstate.c | 580 +++++++++++++----------------
drivers/cpufreq/amd-pstate.h | 61 +--
6 files changed, 410 insertions(+), 477 deletions(-)

--
2.43.0