Messages in this thread | | | Date | Thu, 30 May 2019 12:27:49 +0100 | From | Quentin Perret <> | Subject | Re: [PATCH v5 3/3] thermal: cpu_cooling: Migrate to using the EM framework |
| |
On Thursday 30 May 2019 at 10:20:38 (+0100), Quentin Perret wrote: > The newly introduced Energy Model framework manages power cost tables in > a generic way. Moreover, it supports several types of models since the > tables can come from DT or firmware (through SCMI) for example. On the > other hand, the cpu_cooling subsystem manages its own power cost tables > using only DT data. > > In order to avoid the duplication of data in the kernel, and in order to > enable IPA with EMs coming from more than just DT, remove the private > tables from cpu_cooling.c and migrate it to using the centralized EM > framework. Doing so should have no visible functional impact for > existing users of IPA since: > > - recent extenstions to the the PM_OPP infrastructure enable the > registration of EMs in PM_EM using the DT property used by IPA; > > - the existing upstream cpufreq drivers marked with the > 'CPUFREQ_IS_COOLING_DEV' flag all use the aforementioned PM_OPP > infrastructure, which means they all support PM_EM. The only two > exceptions are qoriq-cpufreq which doesn't in fact use an EM and > scmi-cpufreq which doesn't use DT for power costs. > > For existing users of cpu_cooling, PM_EM tables will contain the exact > same power values that IPA used to compute on its own until now. The > only new dependency for them is to compile in CONFIG_ENERGY_MODEL. > > The case where the thermal subsystem is used without an Energy Model > (cpufreq_cooling_ops) is handled by looking directly at CPUFreq's > frequency table which is already a dependency for cpu_cooling.c anyway. > Since the thermal framework expects the cooling states in a particular > order, bail out whenever the CPUFreq table is unsorted, since that is > fairly uncommon in general, and there are currently no users of > cpu_cooling for this use-case. > > Acked-by: Viresh Kumar <viresh.kumar@linaro.org>
Viresh: the patch hasn't changed much so I kept this, but please shout if you're not happy with the new version :-)
Thanks, Quentin
| |