Skip to content

Commit a7ee88c

Browse files
committed
Merge tag 'devfreq-next-for-5.9' of git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/linux
Pull devfreq updates for v5.9 from Chanwoo Choi: 1. Update devfreq core - Add delayed timer support for polling mode. Until now, devfreq supported only deferrable timer to avoid unneeded CPU wakeups. However, it has a problem for non-CPU devices, like DMC, doing DMA. Such devices need to monitor continuously regardless of the CPU state, so delayed timer support for the polling mode to facilitate the continuous monitoring. - Fix indentation of result of devfreq_summary debugfs node. - Fix the wrong end of code with a semicolon instead of a comma. - Clean-up code to use a unified local variable name in sysfs-related internal funcitons. - Fix trivial spelling mistake in devfreq-event.c. 2. Update devfreq drivers - Add the exception handling code to control when rockchip,pmu property is absent for rk3399_dmc.c. - Add missing 'rockchip,pmu' property to dt-binding document for rk3399_dmc.c. - Change the type of timer in exynos5422-dmc.c from deferrable to delayed in order to monitor the DMC (Dynamic Memory Controller) status regardless of the CPU idle state. Also adjust the polling interval and upthreshold value in order to react faster and make better decisions when benchmarking testing for the memory behavior. - Add module parameter to either enable or disable the IRQ mode for DMC behavior monitoring. exynos5422-dmc.c can operate in both the polling and the IRQ mode. The user can choose the monitoring mode via a module param. The default monitoring mode is the polling mode with a delayed timer. 3. Add maintainer entry - Add Dmitry Osipenko <[email protected]> as maintainer for memory frequency scaling drivers for Nvidia Tegra. He has developed and reviewed tegra*-devfreq.c. * tag 'devfreq-next-for-5.9' of git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/linux: PM / devfreq: Fix the wrong end with semicolon PM / devfreq: Fix indentaion of devfreq_summary debugfs node PM / devfreq: Clean up the devfreq instance name in sysfs attr memory: samsung: exynos5422-dmc: Add module param to control IRQ mode memory: samsung: exynos5422-dmc: Adjust polling interval and uptreshold memory: samsung: exynos5422-dmc: Use delayed timer as default PM / devfreq: Add support delayed timer for polling mode dt-bindings: devfreq: rk3399_dmc: Add rockchip,pmu phandle PM / devfreq: tegra: Add Dmitry as a maintainer PM / devfreq: event: Fix trivial spelling PM / devfreq: rk3399_dmc: Fix kernel oops when rockchip,pmu is absent
2 parents 92ed301 + 27a6971 commit a7ee88c

File tree

8 files changed

+218
-69
lines changed

8 files changed

+218
-69
lines changed

Documentation/ABI/testing/sysfs-class-devfreq

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,3 +108,15 @@ Description:
108108
frequency requested by governors and min_freq.
109109
The max_freq overrides min_freq because max_freq may be
110110
used to throttle devices to avoid overheating.
111+
112+
What: /sys/class/devfreq/.../timer
113+
Date: July 2020
114+
Contact: Chanwoo Choi <[email protected]>
115+
Description:
116+
This ABI shows and stores the kind of work timer by users.
117+
This work timer is used by devfreq workqueue in order to
118+
monitor the device status such as utilization. The user
119+
can change the work timer on runtime according to their demand
120+
as following:
121+
echo deferrable > /sys/class/devfreq/.../timer
122+
echo delayed > /sys/class/devfreq/.../timer

Documentation/devicetree/bindings/devfreq/rk3399_dmc.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ Optional properties:
1818
format depends on the interrupt controller.
1919
It should be a DCF interrupt. When DDR DVFS finishes
2020
a DCF interrupt is triggered.
21+
- rockchip,pmu: Phandle to the syscon managing the "PMU general register
22+
files".
2123

2224
Following properties relate to DDR timing:
2325

MAINTAINERS

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11097,6 +11097,15 @@ F: Documentation/core-api/boot-time-mm.rst
1109711097
F: include/linux/memblock.h
1109811098
F: mm/memblock.c
1109911099

11100+
MEMORY FREQUENCY SCALING DRIVERS FOR NVIDIA TEGRA
11101+
M: Dmitry Osipenko <[email protected]>
11102+
11103+
11104+
T: git git://git.kernel.org/pub/scm/linux/kernel/git/chanwoo/linux.git
11105+
S: Maintained
11106+
F: drivers/devfreq/tegra20-devfreq.c
11107+
F: drivers/devfreq/tegra30-devfreq.c
11108+
1110011109
MEMORY MANAGEMENT
1110111110
M: Andrew Morton <[email protected]>
1110211111

drivers/devfreq/devfreq-event.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -293,7 +293,7 @@ static void devfreq_event_release_edev(struct device *dev)
293293
/**
294294
* devfreq_event_add_edev() - Add new devfreq-event device.
295295
* @dev : the device owning the devfreq-event device being created
296-
* @desc : the devfreq-event device's decriptor which include essential
296+
* @desc : the devfreq-event device's descriptor which include essential
297297
* data for devfreq-event device.
298298
*
299299
* Note that this function add new devfreq-event device to devfreq-event class
@@ -385,7 +385,7 @@ static void devm_devfreq_event_release(struct device *dev, void *res)
385385
/**
386386
* devm_devfreq_event_add_edev() - Resource-managed devfreq_event_add_edev()
387387
* @dev : the device owning the devfreq-event device being created
388-
* @desc : the devfreq-event device's decriptor which include essential
388+
* @desc : the devfreq-event device's descriptor which include essential
389389
* data for devfreq-event device.
390390
*
391391
* Note that this function manages automatically the memory of devfreq-event

0 commit comments

Comments
 (0)