On Thu, Mar 8, 2018 at 10:19 AM, Viresh Kumar <viresh.ku...@linaro.org> wrote:
> On Wed, Mar 7, 2018 at 4:29 PM, Amit Kucheria <amit.kuche...@linaro.org>
>> Cpufreq/cpuidle are designed to control a single parameter while
>> thermal framework is trying to mitigate heat from several disparate
>> sources that are throttled in different ways. Besides, cpufreq/cpuidle
>> have somewhat mature governors. Cpuidle has only one governor (for
>> tickless) - menu governor, cpufreq has ondemand in mainline, replaced
>> by interactive in android and hopefully soon both will be replaced by
> Interactive and schedfreq are already removed from Android 4.4 and 4.9.
> It used schedutil now.
Good to hear.
>> Badly configured cpufreq/cpuidle/devfreq only leads to wasted power,
>> while badly configured thermal zone leads to the loss of operation
>> e.g. reboots, too hot to touch, etc.
> I don't think such heat-ups will happen right during boot, where some
> init.rc should
> come up and change the governor.
Interestingly enough, there are some patches that make the thermal
framework start earlier to deal with boot-time thermal issues. I
expect to post them soon. :-) These are required, for example, if the
device goes into a reboot loop - the device might not even make it to
the point in userspace where the governors are setup. In such a loop,
the temperature constantly keeps increasing.
> Over that if we are worried about production images only, then what prevents
> to select the right default governor in the defconfig ? We shouldn't
> be worried about
> multi-platform kernels for production images.
I was refering to the 'make defconfig' out-of-box experience that
makes the majority of developer boards/devices out there stable to
work on. I can't do that today.