linux-pm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/7] cpufreq: Register cooling device after policy is usable
@ 2014-11-26  5:52 Viresh Kumar
  2014-11-26  5:52 ` [PATCH 1/7] cpufreq: Fix formatting issues in 'struct cpufreq_driver' Viresh Kumar
                   ` (8 more replies)
  0 siblings, 9 replies; 21+ messages in thread
From: Viresh Kumar @ 2014-11-26  5:52 UTC (permalink / raw)
  To: Rafael Wysocki, edubezval
  Cc: linaro-kernel, linux-pm, l.majewski, Viresh Kumar

Hi Rafael/Eduardo,

Currently there is no callback for cpufreq drivers which is called once the
policy is ready to be used. There are some requirements where such a callback is
required.

One of them is registering a cooling device with the help of
of_cpufreq_cooling_register(). This routine tries to get 'struct cpufreq_policy'
for CPUs which isn't yet initialed at the time ->init() is called and so we face
issues while registering the cooling device.

Because we can't register cooling device from ->init(), we need a callback that
is called after the policy is ready to be used and hence ->usable() callback.

The first patch fixes few formatting issues, so that the third patch doesn't
throw any checkpatch warnings. Second one fixes a potential bug in cpufreq-dt
driver. Third one introduces ->usable() callback which will be used in the
fourth patch.

Last three are fixes for cooling core, which may be applied separately by
Eduardo if he wants. Sent them in this series as they were sort of connected
with cpufreq in general.

Let me know if it still doesn't work properly.

--
viresh

Viresh Kumar (7):
  cpufreq: Fix formatting issues in 'struct cpufreq_driver'
  cpufreq-dt: pass 'policy->related_cpus' to
    of_cpufreq_cooling_register()
  cpufreq: Introduce ->usable() callback for cpufreq drivers
  cpufreq-dt: register cooling device from ->usable() callback
  cpu_cooling: Don't match min/max frequencies for all CPUs on cooling
    register
  cpu_cooling: don't iterate over all allowed_cpus to update cpufreq
    policy
  cpu_cooling: No need to check is_cpufreq_valid()

 drivers/cpufreq/cpufreq-dt.c  | 51 +++++++++++++++++++++++++---------------
 drivers/cpufreq/cpufreq.c     |  5 ++++
 drivers/thermal/cpu_cooling.c | 44 ++++-------------------------------
 include/linux/cpufreq.h       | 54 +++++++++++++++++++++++--------------------
 4 files changed, 70 insertions(+), 84 deletions(-)

-- 
2.0.3.693.g996b0fd


^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2014-11-28  9:19 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-11-26  5:52 [PATCH 0/7] cpufreq: Register cooling device after policy is usable Viresh Kumar
2014-11-26  5:52 ` [PATCH 1/7] cpufreq: Fix formatting issues in 'struct cpufreq_driver' Viresh Kumar
2014-11-26 17:57   ` Eduardo Valentin
2014-11-26  5:52 ` [PATCH 2/7] cpufreq-dt: pass 'policy->related_cpus' to of_cpufreq_cooling_register() Viresh Kumar
2014-11-26 17:55   ` Eduardo Valentin
2014-11-26  5:52 ` [PATCH 3/7] cpufreq: Introduce ->usable() callback for cpufreq drivers Viresh Kumar
2014-11-26 17:58   ` Eduardo Valentin
2014-11-27  0:25   ` Rafael J. Wysocki
2014-11-27  0:28     ` Viresh Kumar
2014-11-26  5:52 ` [PATCH 4/7] cpufreq-dt: register cooling device from ->usable() callback Viresh Kumar
2014-11-26 17:59   ` Eduardo Valentin
2014-11-26  5:53 ` [PATCH 5/7] cpu_cooling: Don't match min/max frequencies for all CPUs on cooling register Viresh Kumar
2014-11-27 15:35   ` Eduardo Valentin
2014-11-28  9:19     ` Viresh Kumar
2014-11-26  5:53 ` [PATCH 6/7] cpu_cooling: don't iterate over all allowed_cpus to update cpufreq policy Viresh Kumar
2014-11-26  5:53 ` [PATCH 7/7] cpu_cooling: Don't check is_cpufreq_valid() Viresh Kumar
2014-11-26 17:54 ` [PATCH 0/7] cpufreq: Register cooling device after policy is usable Eduardo Valentin
2014-11-27  0:26   ` Rafael J. Wysocki
2014-11-27 15:33   ` Eduardo Valentin
2014-11-28  6:27     ` Viresh Kumar
2014-11-26 18:01 ` Eduardo Valentin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).