Linux Power Management development
 help / color / mirror / Atom feed
* [RFC 0/1] thermal: rcar-thermal: add cpu cooling
@ 2014-02-28 15:02 Patrick Titiano
  2014-02-28 15:02 ` [RFC 1/1] " Patrick Titiano
  2014-03-20  5:55 ` [RFC 0/1] " Zhang Rui
  0 siblings, 2 replies; 5+ messages in thread
From: Patrick Titiano @ 2014-02-28 15:02 UTC (permalink / raw)
  To: magnus.damm, kuninori.morimoto.gx, eduardo.valentin
  Cc: bcousson, linux-pm, linux-sh, Patrick Titiano

Hi,
This not-yet-ready-to-merge patch proposes to enable CPU thermal management on
Renesas platform. Currently these platforms only register a thermal zone,
but do not implement or register any cooling device.

With this patch:
 - CPU0 cpufreq driver is registered as a cooling device,
 - a new passive trip point is defined to trigger CPU scaling when temperature
   crosses it,
 - CPU0 cooling device and thermal zone 0 are being bound together,
 - set_trip_temp callback is implemented to facilitate experimentation and 
   platform tuning. 

Developed on a RCar-H2 platform, it is intended to support multi-platform.
It leverages CPUFreq support from the series Benoit Cousson recently shared
(http://www.spinics.net/lists/linux-sh/msg29236.html).
The passive trip point temperature is arbitrarily set to 70C, as no HW data was
available at the time this patch was developed.

Being multi-platform, this patch is expected to run smoothly in any situation:
 1/ Platform has no thermal sensor,
 2/ Platform has a thermal sensor and is DVFS capable,
 3/ Platform has a thermal sensor but is not DVFS capable.

This patch has no side-effect in case 1/ (thermal driver wouldn't be loaded).
Case 2/ is the regular case, no issue.
case 3/ is the problematic one.
Using cpufreq driver as a cooling device adds a dependency between those 2
drivers. This is taken care by deferring rcar-thermal probing until
cpufreq driver is up, but this becomes an issue when a platform does
not have DVFS support. cpufreq driver will never be probed, blocking
rcar-thermal probing.

We are still investigation what would be the best way to go, however we would
appreciate a lot any advice from the community.
Thanks!

Regards,
Patrick.

Patrick Titiano (1):
  thermal: rcar-thermal: add cpu cooling

 drivers/thermal/rcar_thermal.c | 103 ++++++++++++++++++++++++++++++++++++++---
 1 file changed, 96 insertions(+), 7 deletions(-)

-- 
1.8.3.2


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

end of thread, other threads:[~2014-03-20  7:57 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-28 15:02 [RFC 0/1] thermal: rcar-thermal: add cpu cooling Patrick Titiano
2014-02-28 15:02 ` [RFC 1/1] " Patrick Titiano
2014-03-20  5:55   ` Zhang Rui
2014-03-20  7:57     ` Kuninori Morimoto
2014-03-20  5:55 ` [RFC 0/1] " Zhang Rui

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox