Messages in this thread | | | From | "Rafael J. Wysocki" <> | Date | Thu, 17 Jan 2019 15:55:12 +0100 | Subject | Re: [PATCH 0/3] drivers: Frequency constraint infrastructure |
| |
On Thu, Jan 17, 2019 at 2:16 PM Juri Lelli <juri.lelli@gmail.com> wrote: > > On 11/01/19 10:47, Rafael J. Wysocki wrote: > > On Fri, Jan 11, 2019 at 10:18 AM Viresh Kumar <viresh.kumar@linaro.org> wrote: > > > > > > Hi, > > > > > > 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 [1] 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. > > > Thanks Matthias. > > > > > > FWIW, This doesn't have anything to do with the boot-constraints > > > framework [2] I was trying to upstream earlier :) > > > > This is quite a bit of code to review, so it will take some time. > > > > One immediate observation is that it seems to do quite a bit of what > > is done in the PM QoS framework, so maybe there is an opportunity for > > some consolidation in there. > > Right, had the same impression. :-) > > I was also wondering how this new framework is dealing with > constraints/request imposed/generated by the scheduler and related > interfaces (thinking about schedutil and Patrick's util_clamp).
My understanding is that it is orthogonal to them, like adding extra constraints on top of them etc.
| |