Skip to content

Commit a771ea6

Browse files
committed
Merge tag 'pm-5.20-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
Pull power management updates from Rafael Wysocki: "These are mostly minor improvements all over including new CPU IDs for the Intel RAPL driver, an Energy Model rework to use micro-Watt as the power unit, cpufreq fixes and cleanus, cpuidle updates, devfreq updates, documentation cleanups and a new version of the pm-graph suite of utilities. Specifics: - Make cpufreq_show_cpus() more straightforward (Viresh Kumar). - Drop unnecessary CPU hotplug locking from store() used by cpufreq sysfs attributes (Viresh Kumar). - Make the ACPI cpufreq driver support the boost control interface on Zhaoxin/Centaur processors (Tony W Wang-oc). - Print a warning message on attempts to free an active cpufreq policy which should never happen (Viresh Kumar). - Fix grammar in the Kconfig help text for the loongson2 cpufreq driver (Randy Dunlap). - Use cpumask_var_t for an on-stack CPU mask in the ondemand cpufreq governor (Zhao Liu). - Add trace points for guest_halt_poll_ns grow/shrink to the haltpoll cpuidle driver (Eiichi Tsukata). - Modify intel_idle to treat C1 and C1E as independent idle states on Sapphire Rapids (Artem Bityutskiy). - Extend support for wakeirq to callback wrappers used during system suspend and resume (Ulf Hansson). - Defer waiting for device probe before loading a hibernation image till the first actual device access to avoid possible deadlocks reported by syzbot (Tetsuo Handa). - Unify device_init_wakeup() for PM_SLEEP and !PM_SLEEP (Bjorn Helgaas). - Add Raptor Lake-P to the list of processors supported by the Intel RAPL driver (George D Sworo). - Add Alder Lake-N and Raptor Lake-P to the list of processors for which Power Limit4 is supported in the Intel RAPL driver (Sumeet Pawnikar). - Make pm_genpd_remove() check genpd_debugfs_dir against NULL before attempting to remove it (Hsin-Yi Wang). - Change the Energy Model code to represent power in micro-Watts and adjust its users accordingly (Lukasz Luba). - Add new devfreq driver for Mediatek CCI (Cache Coherent Interconnect) (Johnson Wang). - Convert the Samsung Exynos SoC Bus bindings to DT schema of exynos-bus.c (Krzysztof Kozlowski). - Address kernel-doc warnings by adding the description for unused function parameters in devfreq core (Mauro Carvalho Chehab). - Use NULL to pass a null pointer rather than zero according to the function propotype in imx-bus.c (Colin Ian King). - Print error message instead of error interger value in tegra30-devfreq.c (Dmitry Osipenko). - Add checks to prevent setting negative frequency QoS limits for CPUs (Shivnandan Kumar). - Update the pm-graph suite of utilities to the latest revision 5.9 including multiple improvements (Todd Brandt). - Drop pme_interrupt reference from the PCI power management documentation (Mario Limonciello)" * tag 'pm-5.20-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (27 commits) powercap: RAPL: Add Power Limit4 support for Alder Lake-N and Raptor Lake-P PM: QoS: Add check to make sure CPU freq is non-negative PM: hibernate: defer device probing when resuming from hibernation intel_idle: make SPR C1 and C1E be independent cpufreq: ondemand: Use cpumask_var_t for on-stack cpu mask cpufreq: loongson2: fix Kconfig "its" grammar pm-graph v5.9 cpufreq: Warn users while freeing active policy cpufreq: scmi: Support the power scale in micro-Watts in SCMI v3.1 firmware: arm_scmi: Get detailed power scale from perf Documentation: EM: Switch to micro-Watts scale PM: EM: convert power field to micro-Watts precision and align drivers PM / devfreq: tegra30: Add error message for devm_devfreq_add_device() PM / devfreq: imx-bus: use NULL to pass a null pointer rather than zero PM / devfreq: shut up kernel-doc warnings dt-bindings: interconnect: samsung,exynos-bus: convert to dtschema PM / devfreq: mediatek: Introduce MediaTek CCI devfreq driver dt-bindings: interconnect: Add MediaTek CCI dt-bindings PM: domains: Ensure genpd_debugfs_dir exists before remove PM: runtime: Extend support for wakeirq for force_suspend|resume ...
2 parents 8fa0db3 + aa727b7 commit a771ea6

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+1498
-827
lines changed

Documentation/devicetree/bindings/devfreq/exynos-bus.txt

Lines changed: 0 additions & 488 deletions
This file was deleted.
Lines changed: 141 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,141 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/interconnect/mediatek,cci.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: MediaTek Cache Coherent Interconnect (CCI) frequency and voltage scaling
8+
9+
maintainers:
10+
- Jia-Wei Chang <[email protected]>
11+
- Johnson Wang <[email protected]>
12+
13+
description: |
14+
MediaTek Cache Coherent Interconnect (CCI) is a hardware engine used by
15+
MT8183 and MT8186 SoCs to scale the frequency and adjust the voltage in
16+
hardware. It can also optimize the voltage to reduce the power consumption.
17+
18+
properties:
19+
compatible:
20+
enum:
21+
- mediatek,mt8183-cci
22+
- mediatek,mt8186-cci
23+
24+
clocks:
25+
items:
26+
- description:
27+
The multiplexer for clock input of the bus.
28+
- description:
29+
A parent of "bus" clock which is used as an intermediate clock source
30+
when the original clock source (PLL) is under transition and not
31+
stable yet.
32+
33+
clock-names:
34+
items:
35+
- const: cci
36+
- const: intermediate
37+
38+
operating-points-v2: true
39+
opp-table: true
40+
41+
proc-supply:
42+
description:
43+
Phandle of the regulator for CCI that provides the supply voltage.
44+
45+
sram-supply:
46+
description:
47+
Phandle of the regulator for sram of CCI that provides the supply
48+
voltage. When it is present, the implementation needs to do
49+
"voltage tracking" to step by step scale up/down Vproc and Vsram to fit
50+
SoC specific needs. When absent, the voltage scaling flow is handled by
51+
hardware, hence no software "voltage tracking" is needed.
52+
53+
required:
54+
- compatible
55+
- clocks
56+
- clock-names
57+
- operating-points-v2
58+
- proc-supply
59+
60+
additionalProperties: false
61+
62+
examples:
63+
- |
64+
#include <dt-bindings/clock/mt8183-clk.h>
65+
cci: cci {
66+
compatible = "mediatek,mt8183-cci";
67+
clocks = <&mcucfg CLK_MCU_BUS_SEL>,
68+
<&topckgen CLK_TOP_ARMPLL_DIV_PLL1>;
69+
clock-names = "cci", "intermediate";
70+
operating-points-v2 = <&cci_opp>;
71+
proc-supply = <&mt6358_vproc12_reg>;
72+
};
73+
74+
cci_opp: opp-table-cci {
75+
compatible = "operating-points-v2";
76+
opp-shared;
77+
opp2_00: opp-273000000 {
78+
opp-hz = /bits/ 64 <273000000>;
79+
opp-microvolt = <650000>;
80+
};
81+
opp2_01: opp-338000000 {
82+
opp-hz = /bits/ 64 <338000000>;
83+
opp-microvolt = <687500>;
84+
};
85+
opp2_02: opp-403000000 {
86+
opp-hz = /bits/ 64 <403000000>;
87+
opp-microvolt = <718750>;
88+
};
89+
opp2_03: opp-463000000 {
90+
opp-hz = /bits/ 64 <463000000>;
91+
opp-microvolt = <756250>;
92+
};
93+
opp2_04: opp-546000000 {
94+
opp-hz = /bits/ 64 <546000000>;
95+
opp-microvolt = <800000>;
96+
};
97+
opp2_05: opp-624000000 {
98+
opp-hz = /bits/ 64 <624000000>;
99+
opp-microvolt = <818750>;
100+
};
101+
opp2_06: opp-689000000 {
102+
opp-hz = /bits/ 64 <689000000>;
103+
opp-microvolt = <850000>;
104+
};
105+
opp2_07: opp-767000000 {
106+
opp-hz = /bits/ 64 <767000000>;
107+
opp-microvolt = <868750>;
108+
};
109+
opp2_08: opp-845000000 {
110+
opp-hz = /bits/ 64 <845000000>;
111+
opp-microvolt = <893750>;
112+
};
113+
opp2_09: opp-871000000 {
114+
opp-hz = /bits/ 64 <871000000>;
115+
opp-microvolt = <906250>;
116+
};
117+
opp2_10: opp-923000000 {
118+
opp-hz = /bits/ 64 <923000000>;
119+
opp-microvolt = <931250>;
120+
};
121+
opp2_11: opp-962000000 {
122+
opp-hz = /bits/ 64 <962000000>;
123+
opp-microvolt = <943750>;
124+
};
125+
opp2_12: opp-1027000000 {
126+
opp-hz = /bits/ 64 <1027000000>;
127+
opp-microvolt = <975000>;
128+
};
129+
opp2_13: opp-1092000000 {
130+
opp-hz = /bits/ 64 <1092000000>;
131+
opp-microvolt = <1000000>;
132+
};
133+
opp2_14: opp-1144000000 {
134+
opp-hz = /bits/ 64 <1144000000>;
135+
opp-microvolt = <1025000>;
136+
};
137+
opp2_15: opp-1196000000 {
138+
opp-hz = /bits/ 64 <1196000000>;
139+
opp-microvolt = <1050000>;
140+
};
141+
};

0 commit comments

Comments
 (0)