Re: [PATCH] OMAP2+: CPUfreq: Allow the CPU scaling when secondary CPUs are offline.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 6/3/2011 11:56 AM, Santosh Shilimkar wrote:
On 6/3/2011 4:40 AM, Kevin Hilman wrote:
Santosh Shilimkar<santosh.shilimkar@xxxxxx> writes:

Current OMAP2PLUS CPUfreq tagret() functions returns when all
the CPU's are not online. This will break DVFS when secondary
CPUs are offlined.

The intention of that check was just avoid CPU frequency change
during the window when CPU becomes online but it's cpufreq_init is
not done yet.

Fix the check accordingly.

Thanks for Nishant Menon<nm@xxxxxx> for reporting it.

Signed-off-by: Santosh Shilimkar<santosh.shilimkar@xxxxxx>
Reported-by: Nishanth Menon<nm@xxxxxx>
Tested-by: Vishwanath BS<vishwanath.bs@xxxxxx>
---
There were some question of making the variable atomic etc
in an internal discussion. After some thinking, I realised
there is no need of that since this is just a counter which
maintains the count for online_cpus = cpufreq_init_cpus.

Since this is init-time only check, the check for every call to
->target() seems excessive.

How about leaving the ->target callback empty until all the CPUs are
online.

Can do that as well.

After re-looking at this, seems not straight forward. This check is
not for cpufreqdriver_init time but per-CPU init functions which is
called after the driver is registered to the governor. We don't do registration again except the cases where driver is build as a module.

How do we handle that ?

Regards
Santosh
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux