-
Notifications
You must be signed in to change notification settings - Fork 25
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge tag 'pm-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/…
…git/rafael/linux-pm Pull power management updates from Rafael Wysocki: "These add hybrid processors support to the intel_pstate driver and make it work with more processor models when HWP is disabled, make the intel_idle driver use special C6 idle state paremeters when package C-states are disabled, add cooling support to the tegra30 devfreq driver, rework the TEO (timer events oriented) cpuidle governor, extend the OPP (operating performance points) framework to use the required-opps DT property in more cases, fix some issues and clean up a number of assorted pieces of code. Specifics: - Make intel_pstate support hybrid processors using abstract performance units in the HWP interface (Rafael Wysocki). - Add Icelake servers and Cometlake support in no-HWP mode to intel_pstate (Giovanni Gherdovich). - Make cpufreq_online() error path be consistent with the CPU device removal path in cpufreq (Rafael Wysocki). - Clean up 3 cpufreq drivers and the statistics code (Hailong Liu, Randy Dunlap, Shaokun Zhang). - Make intel_idle use special idle state parameters for C6 when package C-states are disabled (Chen Yu). - Rework the TEO (timer events oriented) cpuidle governor to address some theoretical shortcomings in it (Rafael Wysocki). - Drop unneeded semicolon from the TEO governor (Wan Jiabing). - Modify the runtime PM framework to accept unassigned suspend and resume callback pointers (Ulf Hansson). - Improve pm_runtime_get_sync() documentation (Krzysztof Kozlowski). - Improve device performance states support in the generic power domains (genpd) framework (Ulf Hansson). - Fix some documentation issues in genpd (Yang Yingliang). - Make the operating performance points (OPP) framework use the required-opps DT property in use cases that are not related to genpd (Hsin-Yi Wang). - Make lazy_link_required_opp_table() use list_del_init instead of list_del/INIT_LIST_HEAD (Yang Yingliang). - Simplify wake IRQs handling in the core system-wide sleep support code and clean up some coding style inconsistencies in it (Tian Tao, Zhen Lei). - Add cooling support to the tegra30 devfreq driver and improve its DT bindings (Dmitry Osipenko). - Fix some assorted issues in the devfreq core and drivers (Chanwoo Choi, Dong Aisheng, YueHaibing)" * tag 'pm-5.14-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (39 commits) PM / devfreq: passive: Fix get_target_freq when not using required-opp cpufreq: Make cpufreq_online() call driver->offline() on errors opp: Allow required-opps to be used for non genpd use cases cpuidle: teo: remove unneeded semicolon in teo_select() dt-bindings: devfreq: tegra30-actmon: Add cooling-cells dt-bindings: devfreq: tegra30-actmon: Convert to schema PM / devfreq: userspace: Use DEVICE_ATTR_RW macro PM: runtime: Clarify documentation when callbacks are unassigned PM: runtime: Allow unassigned ->runtime_suspend|resume callbacks PM: runtime: Improve path in rpm_idle() when no callback PM: hibernate: remove leading spaces before tabs PM: sleep: remove trailing spaces and tabs PM: domains: Drop/restore performance state votes for devices at runtime PM PM: domains: Return early if perf state is already set for the device PM: domains: Split code in dev_pm_genpd_set_performance_state() cpuidle: teo: Use kerneldoc documentation in admin-guide cpuidle: teo: Rework most recent idle duration values treatment cpuidle: teo: Change the main idle state selection logic cpuidle: teo: Cosmetic modification of teo_select() cpuidle: teo: Cosmetic modifications of teo_update() ...
- Loading branch information
Showing
31 changed files
with
775 additions
and
481 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
57 changes: 0 additions & 57 deletions
57
Documentation/devicetree/bindings/arm/tegra/nvidia,tegra30-actmon.txt
This file was deleted.
Oops, something went wrong.
126 changes: 126 additions & 0 deletions
126
Documentation/devicetree/bindings/devfreq/nvidia,tegra30-actmon.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,126 @@ | ||
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) | ||
%YAML 1.2 | ||
--- | ||
$id: http://devicetree.org/schemas/devfreq/nvidia,tegra30-actmon.yaml# | ||
$schema: http://devicetree.org/meta-schemas/core.yaml# | ||
|
||
title: NVIDIA Tegra30 Activity Monitor | ||
|
||
maintainers: | ||
- Dmitry Osipenko <[email protected]> | ||
- Jon Hunter <[email protected]> | ||
- Thierry Reding <[email protected]> | ||
|
||
description: | | ||
The activity monitor block collects statistics about the behaviour of other | ||
components in the system. This information can be used to derive the rate at | ||
which the external memory needs to be clocked in order to serve all requests | ||
from the monitored clients. | ||
properties: | ||
compatible: | ||
enum: | ||
- nvidia,tegra30-actmon | ||
- nvidia,tegra114-actmon | ||
- nvidia,tegra124-actmon | ||
- nvidia,tegra210-actmon | ||
|
||
reg: | ||
maxItems: 1 | ||
|
||
clocks: | ||
maxItems: 2 | ||
|
||
clock-names: | ||
items: | ||
- const: actmon | ||
- const: emc | ||
|
||
resets: | ||
maxItems: 1 | ||
|
||
reset-names: | ||
items: | ||
- const: actmon | ||
|
||
interrupts: | ||
maxItems: 1 | ||
|
||
interconnects: | ||
minItems: 1 | ||
maxItems: 12 | ||
|
||
interconnect-names: | ||
minItems: 1 | ||
maxItems: 12 | ||
description: | ||
Should include name of the interconnect path for each interconnect | ||
entry. Consult TRM documentation for information about available | ||
memory clients, see MEMORY CONTROLLER and ACTIVITY MONITOR sections. | ||
|
||
operating-points-v2: | ||
description: | ||
Should contain freqs and voltages and opp-supported-hw property, which | ||
is a bitfield indicating SoC speedo ID mask. | ||
|
||
"#cooling-cells": | ||
const: 2 | ||
|
||
required: | ||
- compatible | ||
- reg | ||
- clocks | ||
- clock-names | ||
- resets | ||
- reset-names | ||
- interrupts | ||
- interconnects | ||
- interconnect-names | ||
- operating-points-v2 | ||
- "#cooling-cells" | ||
|
||
additionalProperties: false | ||
|
||
examples: | ||
- | | ||
#include <dt-bindings/memory/tegra30-mc.h> | ||
mc: memory-controller@7000f000 { | ||
compatible = "nvidia,tegra30-mc"; | ||
reg = <0x7000f000 0x400>; | ||
clocks = <&clk 32>; | ||
clock-names = "mc"; | ||
interrupts = <0 77 4>; | ||
#iommu-cells = <1>; | ||
#reset-cells = <1>; | ||
#interconnect-cells = <1>; | ||
}; | ||
emc: external-memory-controller@7000f400 { | ||
compatible = "nvidia,tegra30-emc"; | ||
reg = <0x7000f400 0x400>; | ||
interrupts = <0 78 4>; | ||
clocks = <&clk 57>; | ||
nvidia,memory-controller = <&mc>; | ||
operating-points-v2 = <&dvfs_opp_table>; | ||
power-domains = <&domain>; | ||
#interconnect-cells = <0>; | ||
}; | ||
actmon@6000c800 { | ||
compatible = "nvidia,tegra30-actmon"; | ||
reg = <0x6000c800 0x400>; | ||
interrupts = <0 45 4>; | ||
clocks = <&clk 119>, <&clk 57>; | ||
clock-names = "actmon", "emc"; | ||
resets = <&rst 119>; | ||
reset-names = "actmon"; | ||
operating-points-v2 = <&dvfs_opp_table>; | ||
interconnects = <&mc TEGRA30_MC_MPCORER &emc>; | ||
interconnect-names = "cpu-read"; | ||
#cooling-cells = <2>; | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.