Hi Linus, Please pull from the tag git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git \ pm-6.5-rc1 with top-most commit c89a27f4f8fbf4dcbaf1738b42b8c68e160d7cda Merge branch 'powercap' on top of commit 45a3e24f65e90a047bef86f927ebdc4c710edaa1 Linux 6.4-rc7 to receive power management updates for 6.5-rc1. These add Intel TPMI ((Topology Aware Register and PM Capsule Interface) support to the power capping subsystem, extend the intel_idle driver to work in VM guests where MWAIT is not available, extend the system-wide power management diagnostics, fix bugs and clean up code. Specifics: - Introduce power capping core support for Intel TPMI (Topology Aware Register and PM Capsule Interface) and a TPMI interface driver for Intel RAPL (Zhang Rui, Dan Carpenter). - Fix CONFIG_IOSF_MBI dependency in the Intel RAPL power capping driver (Zhang Rui). - Fix invalid initialization for pl4_supported field in the Intel RAPL power capping driver (Sumeet Pawnikar). - Clean up the intel_idle driver, make it work with VM guests that cannot use the MWAIT instruction and address the case in which the host may enter a deep idle state when the guest is idle (Arjan van de Ven). - Prevent cpufreq drivers that provide the ->adjust_perf() callback without a ->fast_switch() one which is used as a fallback from the former in some cases (Wyes Karny). - Fix some issues related to the AMD P-state cpufreq driver (Mario Limonciello, Wyes Karny). - Fix the energy_performance_preference attribute handling in the intel_pstate driver in passive mode (Tero Kristo). - Fix the handling of pm_suspend_target_state when CONFIG_PM is unset (Kai-Heng Feng). - Correct spelling mistake in a comment in the hibernation code (Wang Honghui). - Add arch_resume_nosmt() prototype to avoid a "missing prototypes" build warning (Arnd Bergmann). - Restrict pm_pr_dbg() to system-wide power transitions and use it in a few additional places (Mario Limonciello). - Drop verification of in-params from genpd_add_device() and ensure that all of its callers will do it (Ulf Hansson). - Prevent possible integer overflows from occurring in genpd_parse_state() (Nikita Zhandarovich). - Reorder fields in 'struct devfreq_dev_status' to reduce its size somewhat (Christophe JAILLET). - Ensure that the Exynos PPMU driver is already loaded before the Exynos Bus driver starts probing so as to avoid a possible freeze loading of the kernel modules (Marek Szyprowski). - Fix variable deferencing before NULL check in the mtk-cci devfreq driver (Sukrut Bellary). Thanks! --------------- Arjan van de Ven (4): intel_idle: refactor state->enter manipulation into its own function intel_idle: clean up the (new) state_update_enter_method function intel_idle: Add support for using intel_idle in a VM guest using just hlt intel_idle: Add a "Long HLT" C1 state for the VM guest mode Arnd Bergmann (1): PM: suspend: add a arch_resume_nosmt() prototype Christophe JAILLET (1): PM / devfreq: Reorder fields in 'struct devfreq_dev_status' Dan Carpenter (1): powercap: RAPL: Fix a NULL vs IS_ERR() bug Kai-Heng Feng (1): PM: suspend: Fix pm_suspend_target_state handling for !CONFIG_PM Marek Szyprowski (1): PM / devfreq: exynos: add Exynos PPMU as a soft module dependency Mario Limonciello (8): include/linux/suspend.h: Only show pm_pr_dbg messages at suspend/resume ACPI: x86: Add pm_debug_messages for LPS0 _DSM state tracking pinctrl: amd: Use pm_pr_dbg to show debugging messages platform/x86/amd: pmc: Use pm_pr_dbg() for suspend related messages cpufreq: amd-pstate: Set default governor to schedutil ACPI: CPPC: Add definition for undefined FADT preferred PM profile value cpufreq: amd-pstate: Set a fallback policy based on preferred_profile cpufreq: amd-pstate: Add a kernel config option to set default mode Nikita Zhandarovich (1): PM: domains: fix integer overflow issues in genpd_parse_state() Sukrut Bellary (1): PM / devfreq: mtk-cci: Fix variable deferencing before NULL check Sumeet Pawnikar (1): powercap: RAPL: fix invalid initialization for pl4_supported field Tero Kristo (1): cpufreq: intel_pstate: Fix energy_performance_preference for passive Ulf Hansson (1): PM: domains: Move the verification of in-params from genpd_add_device() Wang Honghui (1): PM: hibernate: Correct spelling mistake in a comment Wyes Karny (3): cpufreq: Fail driver register if it has adjust_perf without fast_switch cpufreq: amd-pstate: Write CPPC enable bit per-socket cpufreq: amd-pstate: Make amd-pstate EPP driver name hyphenated Zhang Rui (16): powercap: intel_rapl: Remove unused field in struct rapl_if_priv powercap: intel_rapl: Allow probing without CPUID match powercap: intel_rapl: Support per Interface rapl_defaults powercap: intel_rapl: Support per Interface primitive information powercap: intel_rapl: Support per domain energy/power/time unit powercap: intel_rapl: Use index to initialize primitive information powercap: intel_rapl: Change primitive order powercap: intel_rapl: Use bitmap for Power Limits powercap: intel_rapl: Cleanup Power Limits support powercap: intel_rapl: Add support for lock bit per Power Limit powercap: intel_rapl: Remove redundant cpu parameter powercap: intel_rapl: Make cpu optional for rapl_package powercap: intel_rapl: Introduce RAPL I/F type powercap: intel_rapl: Introduce core support for TPMI interface powercap: intel_rapl: Introduce RAPL TPMI interface driver powercap: RAPL: Fix CONFIG_IOSF_MBI dependency --------------- drivers/acpi/x86/s2idle.c | 52 +- drivers/base/power/domain.c | 15 +- drivers/base/power/wakeup.c | 5 - drivers/cpufreq/Kconfig | 2 +- drivers/cpufreq/Kconfig.x86 | 17 + drivers/cpufreq/amd-pstate.c | 131 ++- drivers/cpufreq/cpufreq.c | 3 +- drivers/cpufreq/intel_pstate.c | 2 + drivers/devfreq/exynos-bus.c | 1 + drivers/devfreq/mtk-cci-devfreq.c | 3 +- drivers/idle/intel_idle.c | 231 +++++- drivers/pinctrl/pinctrl-amd.c | 6 +- drivers/platform/x86/amd/pmc.c | 4 +- drivers/powercap/Kconfig | 18 +- drivers/powercap/Makefile | 1 + drivers/powercap/intel_rapl_common.c | 883 ++++++++++++--------- drivers/powercap/intel_rapl_msr.c | 31 +- drivers/powercap/intel_rapl_tpmi.c | 325 ++++++++ .../intel/int340x_thermal/processor_thermal_rapl.c | 11 +- include/acpi/actbl.h | 3 +- include/linux/amd-pstate.h | 4 +- include/linux/cpufreq.h | 5 +- include/linux/devfreq.h | 3 +- include/linux/intel_rapl.h | 40 +- include/linux/suspend.h | 14 +- kernel/power/main.c | 6 + kernel/power/snapshot.c | 2 +- 27 files changed, 1324 insertions(+), 494 deletions(-)