diff mbox series

[GIT,PULL] Power management updates for v5.8-rc1

Message ID CAJZ5v0gV2T9BUBGT8TOt+kdO6+T_WwmcO1PPonWu76REGkoorQ@mail.gmail.com (mailing list archive)
State Mainlined, archived
Headers show
Series [GIT,PULL] Power management updates for v5.8-rc1 | expand

Commit Message

Rafael J. Wysocki June 1, 2020, 3:48 p.m. UTC
Hi Linus,

Please pull from the tag

 git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git \
 pm-5.8-rc1

with top-most commit a34024d98eeaa78e2cd22017180df778800b83fc

 Merge branches 'pm-devfreq', 'powercap', 'pm-docs' and 'pm-tools'

on top of commit 9cb1fd0efd195590b828b9b865421ad345a4a145

 Linux 5.7-rc7

to receive power management updates for 5.8-rc1.

These rework the system-wide PM driver flags, make runtime switching
of cpuidle governors easier, improve the user space hibernation
interface code, add intel-speed-select interface documentation,
add more debug messages to the ACPI code handling suspend to idle,
update the cpufreq core and drivers, fix a minor issue in the
cpuidle core and update two cpuidle drivers, improve the PM-runtime
framework, update the Intel RAPL power capping driver, update devfreq
core and drivers, and clean up the cpupower utility.

Specifics:

 - Rework the system-wide PM driver flags to make them easier to
   understand and use and update their documentation (Rafael Wysocki,
   Alan Stern).

 - Allow cpuidle governors to be switched at run time regardless of
   the kernel configuration and update the related documentation
   accordingly (Hanjun Guo).

 - Improve the resume device handling in the user space hibernation
   interface code (Domenico Andreoli).

 - Document the intel-speed-select sysfs interface (Srinivas
   Pandruvada).

 - Make the ACPI code handing suspend to idle print more debug
   messages to help diagnose issues with it (Rafael Wysocki).

 - Fix a helper routine in the cpufreq core and correct a typo in
   the struct cpufreq_driver kerneldoc comment (Rafael Wysocki, Wang
   Wenhu).

 - Update cpufreq drivers:

   * Make the intel_pstate driver start in the passive mode by
     default on systems without HWP (Rafael Wysocki).

   * Add i.MX7ULP support to the imx-cpufreq-dt driver and add
     i.MX7ULP to the cpufreq-dt-platdev blacklist (Peng Fan).

   * Convert the qoriq cpufreq driver to a platform one, make the
     platform code create a suitable device object for it and add
     platform dependencies to it (Mian Yousaf Kaukab, Geert
     Uytterhoeven).

   * Fix wrong compatible binding in the qcom driver (Ansuel Smith).

   * Build the omap driver by default for ARCH_OMAP2PLUS (Anders
     Roxell).

   * Add r8a7742 SoC support to the dt cpufreq driver (Lad Prabhakar).

 - Update cpuidle core and drivers:

   * Fix three reference count leaks in error code paths in the
     cpuidle core (Qiushi Wu).

   * Convert Qualcomm SPM to a generic cpuidle driver (Stephan
     Gerhold).

   * Fix up the execution order when entering a domain idle state in
     the PSCI driver (Ulf Hansson).

 - Fix a reference counting issue related to clock management and
   clean up two oddities in the PM-runtime framework (Rafael Wysocki,
   Andy Shevchenko).

 - Add ElkhartLake support to the Intel RAPL power capping driver
   and remove an unused local MSR definition from it (Jacob Pan,
   Sumeet Pawnikar).

 - Update devfreq core and drivers:

   * Replace strncpy() with strscpy() in the devfreq core and use
     lockdep asserts instead of manual checks for a locked mutex in
     it (Dmitry Osipenko, Krzysztof Kozlowski).

   * Add a generic imx bus scaling driver and make it register an
     interconnect device (Leonard Crestez, Gustavo A. R. Silva).

   * Make the cpufreq notifier in the tegra30 driver take boosting
     into account and delete an unuseful error message from that
     driver (Dmitry Osipenko, Markus Elfring).

 - Remove unneeded semicolon from the cpupower code (Zou Wei).

There is a merge conflict between this update and the drm tree which
was addressed in linux-next by applying the appended diff.

Thanks!


---------------

Alan Stern (1):
      PM: sleep: Helpful edits for devices.rst documentation

Anders Roxell (1):
      cpufreq: omap: Build driver by default for ARCH_OMAP2PLUS

Andy Shevchenko (1):
      PM: runtime: Make clear what we do when conditions are wrong in
rpm_suspend()

Ansuel Smith (1):
      cpufreq: qcom: fix wrong compatible binding

Dmitry Osipenko (2):
      PM / devfreq: tegra30: Make CPUFreq notifier to take into account boosting
      PM / devfreq: Replace strncpy with strscpy

Domenico Andreoli (3):
      PM: hibernate: Incorporate concurrency handling
      PM: hibernate: Split off snapshot dev option
      PM: hibernate: Restrict writes to the resume device

Geert Uytterhoeven (1):
      cpufreq: qoriq: Add platform dependencies

Gustavo A. R. Silva (1):
      PM / devfreq: imx-bus: Fix inconsistent IS_ERR and PTR_ERR

Hanjun Guo (8):
      cpuidle: sysfs: Remove the unused define_one_r(o/w) macros
      cpuidle: sysfs: Minor coding style corrections
      cpuidle: sysfs: Fix the overlap for showing available governors
      cpuidle: sysfs: Accept governor name with 15 characters
      cpuidle: Make cpuidle governor switchable to be the default behaviour
      cpuidle: sysfs: Remove sysfs_switch and switch attributes
      Documentation: cpuidle: update the document
      Documentation: ABI: make current_governer_ro as a candidate for removal

Jacob Pan (1):
      powercap/intel_rapl: add support for ElkhartLake

Krzysztof Kozlowski (1):
      PM / devfreq: Use lockdep asserts instead of manual checks for
locked mutex

Lad Prabhakar (1):
      cpufreq: dt: Add support for r8a7742

Leonard Crestez (2):
      PM / devfreq: Add generic imx bus scaling driver
      PM / devfreq: imx: Register interconnect device

Markus Elfring (1):
      PM / devfreq: tegra30: Delete an error message in tegra_devfreq_probe()

Mian Yousaf Kaukab (2):
      cpufreq: qoriq: convert to a platform driver
      clk: qoriq: add cpufreq platform device

Peng Fan (2):
      cpufreq: Add i.MX7ULP to cpufreq-dt-platdev blacklist
      cpufreq: imx-cpufreq-dt: support i.MX7ULP

Qiushi Wu (1):
      cpuidle: Fix three reference count leaks

Rafael J. Wysocki (15):
      cpufreq: intel_pstate: Use passive mode by default without HWP
      PM: sleep: core: Simplify the SMART_SUSPEND flag handling
      PM: sleep: core: Fold functions into their callers
      PM: sleep: core: Do not skip callbacks in the resume phase
      PM: sleep: core: Rework the power.may_skip_resume handling
      PM: sleep: core: Rename dev_pm_may_skip_resume()
      PM: sleep: core: Rename dev_pm_smart_suspend_and_suspended()
      PM: sleep: core: Rename DPM_FLAG_NEVER_SKIP
      PM: sleep: core: Rename DPM_FLAG_LEAVE_SUSPENDED
      Documentation: PM: sleep: Update driver flags documentation
      cpufreq: Fix up cpufreq_boost_set_sw()
      ACPI: PM: s2idle: Print type of wakeup debug messages
      ACPI: EC: PM: s2idle: Extend GPE dispatching debug message
      PM: runtime: clk: Fix clk_pm_runtime_get() error path
      PM: runtime: Replace pm_runtime_callbacks_present()

Srinivas Pandruvada (1):
      Documentation: admin-guide: pm: Document intel-speed-select

Stephan Gerhold (1):
      cpuidle: Convert Qualcomm SPM driver to a generic CPUidle driver

Sumeet Pawnikar (1):
      powercap: RAPL: remove unused local MSR define

Ulf Hansson (1):
      cpuidle: psci: Fixup execution order when entering a domain idle state

Wang Wenhu (1):
      cpufreq: fix minor typo in struct cpufreq_driver doc comment

Zou Wei (1):
      cpupower: Remove unneeded semicolon

---------------

 Documentation/ABI/obsolete/sysfs-cpuidle           |   9 +
 Documentation/ABI/testing/sysfs-devices-system-cpu |  24 +-
 Documentation/admin-guide/pm/cpuidle.rst           |  20 +-
 .../admin-guide/pm/intel-speed-select.rst          | 917 +++++++++++++++++++++
 Documentation/admin-guide/pm/intel_pstate.rst      |  32 +-
 Documentation/admin-guide/pm/working-state.rst     |   1 +
 Documentation/driver-api/pm/cpuidle.rst            |   5 +-
 Documentation/driver-api/pm/devices.rst            | 199 +++--
 Documentation/power/pci.rst                        |  58 +-
 MAINTAINERS                                        |   1 +
 drivers/acpi/acpi_lpss.c                           |  14 +-
 drivers/acpi/acpi_tad.c                            |   2 +-
 drivers/acpi/device_pm.c                           |  31 +-
 drivers/acpi/ec.c                                  |   2 +-
 drivers/acpi/sleep.c                               |  20 +-
 drivers/base/power/main.c                          | 348 +++-----
 drivers/base/power/runtime.c                       |   6 +-
 drivers/base/power/sysfs.c                         |   4 +-
 drivers/clk/clk-qoriq.c                            |  30 +-
 drivers/clk/clk.c                                  |   6 +-
 drivers/cpufreq/Kconfig                            |   3 +-
 drivers/cpufreq/Kconfig.arm                        |   1 +
 drivers/cpufreq/cpufreq-dt-platdev.c               |   2 +
 drivers/cpufreq/cpufreq.c                          |  11 +-
 drivers/cpufreq/imx-cpufreq-dt.c                   |  84 +-
 drivers/cpufreq/intel_pstate.c                     |   3 +-
 drivers/cpufreq/qcom-cpufreq-nvmem.c               |   2 +-
 drivers/cpufreq/qoriq-cpufreq.c                    |  76 +-
 drivers/cpuidle/Kconfig.arm                        |  13 +
 drivers/cpuidle/Makefile                           |   1 +
 drivers/cpuidle/cpuidle-psci.c                     |   8 +-
 .../{soc/qcom/spm.c => cpuidle/cpuidle-qcom-spm.c} | 138 ++--
 drivers/cpuidle/sysfs.c                            |  73 +-
 drivers/devfreq/Kconfig                            |   8 +
 drivers/devfreq/Makefile                           |   1 +
 drivers/devfreq/devfreq.c                          |  19 +-
 drivers/devfreq/imx-bus.c                          | 179 ++++
 drivers/devfreq/tegra30-devfreq.c                  |   7 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c            |   2 +-
 drivers/gpu/drm/i915/intel_runtime_pm.c            |   2 +-
 drivers/gpu/drm/radeon/radeon_kms.c                |   2 +-
 drivers/i2c/busses/i2c-designware-platdrv.c        |   4 +-
 drivers/misc/mei/pci-me.c                          |   2 +-
 drivers/misc/mei/pci-txe.c                         |   2 +-
 drivers/net/ethernet/intel/e1000e/netdev.c         |   2 +-
 drivers/net/ethernet/intel/igb/igb_main.c          |   2 +-
 drivers/net/ethernet/intel/igc/igc_main.c          |   2 +-
 drivers/pci/hotplug/pciehp_core.c                  |   2 +-
 drivers/pci/pci-driver.c                           |  34 +-
 drivers/pci/pcie/portdrv_pci.c                     |   2 +-
 drivers/powercap/intel_rapl_common.c               |   4 +-
 drivers/soc/qcom/Kconfig                           |  10 -
 drivers/soc/qcom/Makefile                          |   1 -
 fs/block_dev.c                                     |   3 +-
 include/linux/cpufreq.h                            |   2 +-
 include/linux/pm.h                                 |  34 +-
 include/linux/pm_runtime.h                         |   4 +-
 include/linux/suspend.h                            |   6 +
 kernel/power/Kconfig                               |  12 +
 kernel/power/Makefile                              |   3 +-
 kernel/power/hibernate.c                           |  20 +-
 kernel/power/power.h                               |   4 +-
 kernel/power/user.c                                |  22 +-
 tools/power/cpupower/utils/cpupower-info.c         |   2 +-
 tools/power/cpupower/utils/cpupower-set.c          |   2 +-
 .../cpupower/utils/idle_monitor/amd_fam14h_idle.c  |   2 +-
 .../cpupower/utils/idle_monitor/cpuidle_sysfs.c    |   6 +-
 .../cpupower/utils/idle_monitor/hsw_ext_idle.c     |   2 +-
 tools/power/cpupower/utils/idle_monitor/nhm_idle.c |   2 +-
 tools/power/cpupower/utils/idle_monitor/snb_idle.c |   2 +-
 70 files changed, 1831 insertions(+), 728 deletions(-)

---------------

+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
@@@ -189,10 -188,12 +188,12 @@@ int amdgpu_driver_load_kms(struct drm_d
          dev_dbg(&dev->pdev->dev, "Error during ACPI methods call\n");

      if (adev->runpm) {
-         dev_pm_set_driver_flags(dev->dev, DPM_FLAG_NO_DIRECT_COMPLETE);
+         /* only need to skip on ATPX */
+         if (amdgpu_device_supports_boco(dev) &&
+             !amdgpu_is_atpx_hybrid())
 -            dev_pm_set_driver_flags(dev->dev, DPM_FLAG_NEVER_SKIP);
++            dev_pm_set_driver_flags(dev->dev, DPM_FLAG_NO_DIRECT_COMPLETE);
          pm_runtime_use_autosuspend(dev->dev);
          pm_runtime_set_autosuspend_delay(dev->dev, 5000);
-         pm_runtime_set_active(dev->dev);
          pm_runtime_allow(dev->dev);
          pm_runtime_mark_last_busy(dev->dev);
          pm_runtime_put_autosuspend(dev->dev);

Comments

pr-tracker-bot@kernel.org June 2, 2020, 8:35 p.m. UTC | #1
The pull request you sent on Mon, 1 Jun 2020 17:48:27 +0200:

> git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git pm-5.8-rc1

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/355ba37d756c38962fe9bb616f5f48eb12a7e11e

Thank you!
diff mbox series

Patch

diff --cc drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
index c201bc827389,4e4c9550dcf8..000000000000
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c