[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJZ5v0hDjPb8n5wQODb==QMvp7ipEVpRoSqJ6pTii=_6XvRwEw@mail.gmail.com>
Date: Mon, 13 May 2024 21:28:41 +0200
From: "Rafael J. Wysocki" <rafael@...nel.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Linux PM <linux-pm@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
ACPI Devel Maling List <linux-acpi@...r.kernel.org>
Subject: [GIT PULL] Power management updates for v6.10-rc1
Hi Linus,
Please pull from the tag
git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git \
pm-6.10-rc1
with top-most commit de1c2722e07819c7ea65bb4bf37a2cfe2556095b
Merge branches 'pm-em' and 'pm-docs'
on top of commit dd5a440a31fae6e459c0d6271dddd62825505361
Linux 6.9-rc7
to receive power management updates for 6.10-rc1.
These are mostly cpufreq updates, including a significant intel-pstate
driver update and several amd-pstate improvements plus some updates of
ARM cpufreq drivers, general fixes and cleanups.
Also included are changes related to system sleep, power capping updates
adding support for a new platform and a new hardware feature (among other
things), a Samsung exynos-asv driver update allowing it to change its
Energy Model after adjusting voltage, minor cpuidle and devfreq updates
and a small documentation cleanup.
Specifics:
- Rework the handling of disabled turbo in the intel_pstate driver and
make it update the maximum CPU frequency consistently regardless of
the reason on top of a number of cleanups (Rafael Wysocki).
- Add missing checks for NULL .exit() cpufreq driver callback to the
cpufreq core (Viresh Kumar).
- Prevent pulicy->max from going above the frequency QoS maximum value
when cpufreq_frequency_table_verify() is used (Xuewen Yan).
- Prevent a negative CPU number or frequency value from being printed
if they are really large (Joshua Yeong).
- Update MAINTAINERS entry for amd-pstate to add two new submaintainers
and a designated reviewer (Huang Rui).
- Clean up the amd-pstate driver and update its documentation (Gautham
Shenoy).
- Fix the highest frequency issue in the amd-pstate driver which limits
performance (Perry Yuan).
- Enable CPPC v2 for certain processors in the family 17H, as requested
by TR40 processor users who expect improved performance and lower
system temperature (Perry Yuan).
- Change latency and delay values to be read from platform firmware
firstly for more accurate timing (Perry Yuan).
- A new quirk is introduced for supporting amd-pstate on legacy
processors which either lack CPPC capability, or only only have CPPC
v2 capability (Perry Yuan).
- Sun50i cpufreq: Add support for opp_supported_hw, H616 platform and
general cleanups (Andre Przywara, Martin Botka, Brandon Cheo Fusi,
Dan Carpenter, Viresh Kumar).
- CPPC cpufreq: Fix possible null pointer dereference (Aleksandr
Mishin).
- Eliminate uses of of_node_put() from cpufreq (Javier Carrasco,
Shivani Gupta).
- brcmstb-avs: ISO C90 forbids mixed declarations (Portia Stephens).
- mediatek cpufreq: Add support for MT7988A (Sam Shih).
- cpufreq-qcom-hw: Add SM4450 compatibles in DT bindings (Tengfei Fan).
- Fix struct cpudata::epp_cached kernel-doc in the intel_pstate cpufreq
driver (Jeff Johnson).
- Fix kerneldoc description of ladder_do_selection() (Jeff Johnson).
- Convert the cpuidle kirkwood driver to platform remove callback
returning void (Yangtao Li).
- Replace deprecated strncpy() with strscpy() in the hibernation core
code (Justin Stitt).
- Use %ps to simplify debug output in the core system-wide suspend and
resume code (Len Brown).
- Remove unnecessary else from device_init_wakeup() and make
device_wakeup_disable() return void (Dhruva Gole).
- Enable PMU support in the Intel TPMI RAPL driver (Zhang Rui).
- Add support for ArrowLake-H platform to the Intel RAPL driver (Zhang
Rui).
- Avoid explicit cpumask allocation on stack in DTPM (Dawei Li).
- Make the Samsung exynos-asv driver update the Energy Model after
adjusting voltage on top of some preliminary changes of the OPP and
Enery Model generic code (Lukasz Luba).
- Remove a reference to a function that has been dropped from the power
management documentation (Bjorn Helgaas).
- Convert the platfrom remove callback to .remove_new for the
exyno-nocp, exynos-ppmu, mtk-cci-devfreq, sun8i-a33-mbus, and
rk3399_dmc devfreq drivers (Uwe Kleine-König).
- Use DEFINE_SIMPLE_PM_OPS for exyno-bus.c driver (Anand Moon).
Thanks!
---------------
Aleksandr Mishin (1):
cppc_cpufreq: Fix possible null pointer dereference
Anand Moon (1):
PM / devfreq: exynos: Use DEFINE_SIMPLE_DEV_PM_OPS for PM functions
Andre Przywara (2):
cpufreq: sun50i: Add support for opp_supported_hw
arm64: dts: allwinner: h616: enable DVFS for all boards
Arnd Bergmann (1):
cpufreq: intel_pstate: hide unused intel_pstate_cpu_oob_ids[]
Bjorn Helgaas (1):
Documentation: PM: Update platform_pci_wakeup_init() reference
Brandon Cheo Fusi (1):
cpufreq: sun50i: Refactor speed bin decoding
Dan Carpenter (1):
cpufreq: sun50i: fix error returns in dt_has_supported_hw()
Dawei Li (1):
powercap: DTPM: Avoid explicit cpumask allocation on stack
Dhruva Gole (2):
PM: wakeup: make device_wakeup_disable() return void
PM: wakeup: Remove unnecessary else from device_init_wakeup()
Gautham R. Shenoy (3):
cpufreq: amd-pstate: Document *_limit_* fields in struct amd_cpudata
cpufreq: amd-pstate: Document the units for freq variables in amd_cpudata
cpufreq: amd-pstate: Remove
amd_get_{min,max,nominal,lowest_nonlinear}_freq()
Huang Rui (1):
MAINTAINERS: cpufreq: amd-pstate: Add co-maintainers and reviewer
Javier Carrasco (3):
cpupfreq: tegra124: eliminate uses of of_node_put()
cpufreq: dt: eliminate uses of of_node_put()
cpufreq: dt-platdev: eliminate uses of of_node_put()
Jeff Johnson (2):
cpuidle: ladder: fix ladder_do_selection() kernel-doc
cpufreq: intel_pstate: fix struct cpudata::epp_cached kernel-doc
Joshua Yeong (1):
cpufreq: Fix up printing large CPU numbers and frequency values
Justin Stitt (1):
PM: hibernate: replace deprecated strncpy() with strscpy()
Len Brown (1):
PM: sleep: Take advantage of %ps to simplify debug output
Lukasz Luba (4):
OPP: OF: Export dev_opp_pm_calc_power() for usage from EM
PM: EM: Refactor em_adjust_new_capacity()
PM: EM: Add em_dev_update_chip_binning()
soc: samsung: exynos-asv: Update Energy Model after adjusting voltage
Martin Botka (5):
firmware: smccc: Export revision soc_id function
cpufreq: dt-platdev: Blocklist Allwinner H616/618 SoCs
dt-bindings: opp: Describe H616 OPPs and opp-supported-hw
cpufreq: sun50i: Add H616 support
arm64: dts: allwinner: h616: Add CPU OPPs table
Perry Yuan (8):
cpufreq: amd-pstate: Unify computation of
{max,min,nominal,lowest_nonlinear}_freq
cpufreq: amd-pstate: Bail out if min/max/nominal_freq is 0
cpufreq: amd-pstate: get transition delay and latency value from
ACPI tables
cppc_acpi: print error message if CPPC is unsupported
cpufreq: amd-pstate: Add quirk for the pstate CPPC capabilities missing
cpufreq: amd-pstate: fix code format problems
cpufreq: amd-pstate: remove unused variable lowest_nonlinear_freq
cpufreq: amd-pstate: fix the highest frequency issue which
limits performance
Portia Stephens (1):
cpufreq: brcmstb-avs-cpufreq: ISO C90 forbids mixed declarations
Rafael J. Wysocki (11):
cpufreq: intel_pstate: Drop redundant locking from
intel_pstate_driver_cleanup()
cpufreq: intel_pstate: Simplify spinlock locking
cpufreq: intel_pstate: Wait for canceled delayed work to complete
cpufreq: intel_pstate: Get rid of unnecessary READ_ONCE() annotations
cpufreq: intel_pstate: Use __ro_after_init for three variables
cpufreq: intel_pstate: Fold intel_pstate_max_within_limits() into caller
cpufreq: intel_pstate: Do not update global.turbo_disabled after
initialization
cpufreq: intel_pstate: Rearrange show_no_turbo() and store_no_turbo()
cpufreq: intel_pstate: Read global.no_turbo under READ_ONCE()
cpufreq: intel_pstate: Replace three global.turbo_disabled checks
cpufreq: intel_pstate: Update the maximum CPU frequency consistently
Sam Shih (1):
cpufreq: mediatek: Add support for MT7988A
Shivani Gupta (1):
cpufreq: ti: Implement scope-based cleanup in ti_cpufreq_match_node()
Tengfei Fan (1):
dt-bindings: cpufreq: cpufreq-qcom-hw: Add SM4450 compatibles
Uwe Kleine-König (5):
PM / devfreq: exynos-nocp: Convert to platform remove callback
returning void
PM / devfreq: exynos-ppmu: Convert to platform remove callback
returning void
PM / devfreq: mtk-cci: Convert to platform remove callback returning void
PM / devfreq: sun8i-a33-mbus: Convert to platform remove
callback returning void
PM / devfreq: rk3399_dmc: Convert to platform remove callback
returning void
Viresh Kumar (2):
cpufreq: exit() callback is optional
cpufreq: sun50i: Fix build warning around snprint()
Xuewen Yan (1):
cpufreq: Use a smaller freq for the policy->max when verify
Yangtao Li (1):
cpuidle: kirkwood: Convert to platform remove callback returning void
Zhang Rui (4):
powercap: intel_rapl: Add support for ArrowLake-H platform
powercap: intel_rapl: Sort header files
powercap: intel_rapl: Introduce APIs for PMU support
powercap: intel_rapl_tpmi: Enable PMU support
---------------
.../bindings/cpufreq/cpufreq-qcom-hw.yaml | 2 +
.../opp/allwinner,sun50i-h6-operating-points.yaml | 87 ++-
Documentation/power/pci.rst | 2 +-
MAINTAINERS | 3 +
.../dts/allwinner/sun50i-h616-bigtreetech-cb1.dtsi | 5 +
.../boot/dts/allwinner/sun50i-h616-cpu-opp.dtsi | 115 ++++
.../dts/allwinner/sun50i-h616-orangepi-zero2.dts | 5 +
.../boot/dts/allwinner/sun50i-h616-x96-mate.dts | 5 +
arch/arm64/boot/dts/allwinner/sun50i-h616.dtsi | 8 +
.../allwinner/sun50i-h618-longan-module-3h.dtsi | 5 +
.../dts/allwinner/sun50i-h618-orangepi-zero2w.dts | 5 +
.../dts/allwinner/sun50i-h618-orangepi-zero3.dts | 5 +
.../allwinner/sun50i-h618-transpeed-8k618-t.dts | 5 +
drivers/acpi/cppc_acpi.c | 4 +-
drivers/base/power/main.c | 6 +-
drivers/base/power/wakeup.c | 11 +-
drivers/cpufreq/amd-pstate.c | 280 ++++++----
drivers/cpufreq/brcmstb-avs-cpufreq.c | 5 +-
drivers/cpufreq/cppc_cpufreq.c | 14 +-
drivers/cpufreq/cpufreq-dt-platdev.c | 10 +-
drivers/cpufreq/cpufreq-dt.c | 21 +-
drivers/cpufreq/cpufreq.c | 11 +-
drivers/cpufreq/freq_table.c | 12 +-
drivers/cpufreq/intel_pstate.c | 173 +++---
drivers/cpufreq/mediatek-cpufreq.c | 10 +
drivers/cpufreq/sun50i-cpufreq-nvmem.c | 209 +++++--
drivers/cpufreq/tegra124-cpufreq.c | 19 +-
drivers/cpufreq/ti-cpufreq.c | 4 +-
drivers/cpuidle/cpuidle-kirkwood.c | 5 +-
drivers/cpuidle/governors/ladder.c | 1 +
drivers/devfreq/event/exynos-nocp.c | 6 +-
drivers/devfreq/event/exynos-ppmu.c | 6 +-
drivers/devfreq/exynos-bus.c | 9 +-
drivers/devfreq/mtk-cci-devfreq.c | 6 +-
drivers/devfreq/rk3399_dmc.c | 6 +-
drivers/devfreq/sun8i-a33-mbus.c | 6 +-
drivers/firmware/smccc/smccc.c | 1 +
drivers/mmc/host/sdhci-pci-core.c | 2 +-
drivers/opp/of.c | 17 +-
drivers/powercap/dtpm_cpu.c | 8 +-
drivers/powercap/intel_rapl_common.c | 607 ++++++++++++++++++++-
drivers/powercap/intel_rapl_tpmi.c | 3 +
drivers/soc/samsung/exynos-asv.c | 10 +-
include/linux/amd-pstate.h | 20 +-
include/linux/energy_model.h | 5 +
include/linux/intel_rapl.h | 32 ++
include/linux/pm_opp.h | 8 +
include/linux/pm_wakeup.h | 12 +-
kernel/power/energy_model.c | 106 +++-
kernel/power/hibernate.c | 2 +-
50 files changed, 1481 insertions(+), 438 deletions(-)
Powered by blists - more mailing lists