[GIT PULL] Power management updates for v6.10-rc1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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(-)





[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]
  Powered by Linux