[PATCH 0/3] drivers: Frequency constraint infrastructure
- Date: Fri, 11 Jan 2019 14:48:33 +0530
- From: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
- Subject: [PATCH 0/3] drivers: Frequency constraint infrastructure
This commit introduces the frequency constraint infrastructure, which
provides a generic interface for parts of the kernel to constraint the
working frequency range of a device.
The primary users of this are the cpufreq and devfreq frameworks. The
cpufreq framework already implements such constraints with help of
notifier chains (for thermal and other constraints) and some local code
(for user-space constraints). The devfreq framework developers have also
shown interest  in such a framework, which may use it at a later
point of time.
The idea here is to provide a generic interface and get rid of the
notifier based mechanism.
Only one constraint is added for now for the cpufreq framework and the
rest will follow after this stuff is merged.
Matthias Kaehlcke was involved in the preparation of the first draft of
this work and so I have added him as Co-author to the first patch.
FWIW, This doesn't have anything to do with the boot-constraints
framework  I was trying to upstream earlier :)
Viresh Kumar (3):
drivers: base: Add frequency constraint infrastructure
cpufreq: Implement freq-constraint callback
cpufreq: Implement USER constraint
MAINTAINERS | 8 +
drivers/base/Kconfig | 5 +
drivers/base/Makefile | 1 +
drivers/base/freq_constraint.c | 633 ++++++++++++++++++++++++++++++++++++++++
drivers/cpufreq/Kconfig | 1 +
drivers/cpufreq/cpufreq.c | 92 ++++--
include/linux/cpufreq.h | 8 +-
include/linux/freq_constraint.h | 45 +++
8 files changed, 756 insertions(+), 37 deletions(-)
create mode 100644 drivers/base/freq_constraint.c
create mode 100644 include/linux/freq_constraint.h