Re: [PATCH v4 5/7] cpufreq: Calculate number of busy CPUs

Viresh Kumar
2013-06-28T03:50:43Z

On 27 June 2013 20:12, Lukasz Majewski <l.majewski@samsung.com> wrote:
> On Thu, 27 Jun 2013 16:46:44 +0530, Viresh Kumar wrote:
>> @Rafael: We need you to jump into this discussion now, I don't
>> have a good idea about what we should do :)
>>
>> On 27 June 2013 16:28, Lukasz Majewski <l.majewski@samsung.com> wrote:
>> > Do you have any idea of how to precisely set the load threshold?
>>
>> I thought we are talking about cpu being in idle state.
>
> If we _drop_ the idea with thermal subsystem to disable the boost,
> the logic as far as I've understood shall here be as follow:
>
> Only enable BOOST when one CPU load > THRESHOLD_MAX and other CPUs <
> THRESHOLD_MIN

Again, I thought that we are talking about cpus being completely idle.
i.e. in WFI (wait for interrupt) or deeper states.

> THRESHOLD_MIN & THRESHOLD_MAX are SoC specific.
>
> In my opinion the above constrain imposes policy to the cpufreq driver.

Hmm.

> So thermal or "other solution" [*] shall disable boost when overheated
> and enable it back when things cool down.

yeah..

> [*] @ Viresh & Rafael do you have any idea about the "other solution"
> here?

Not really sure :)

>> There might be platforms where overheating isn't a issue with boost,
>> if it is only enabled while only one cpu is in use.
>
> Could you elaborate more on this?

I meant platforms where chip doesn't heat up much when only one core
is in use and is using boost frequency. So, they may not require support
for thermal layer at all.. But I am not aware of what the ground reality is. If
such systems can be possible or not.

> This would prevent situation when somebody made a mistake and
> had enabled boost, but for some reason had forgotten to
> configure/enable thermal subsystem.
>
> Moreover Kconfig's CONFIG_CPUFREQ_BOOST flag would indicate that user
> enabled boost for some reason and he/she (presumably) knows what is
> doing.

Yeah.. And drivers like ACPI cpufreq and exynos can simply do a select
from their Kconfig entries so that user isn't required to select them.