Thread (21 messages) 21 messages, 6 authors, 2012-04-04

Re: [PATCH 2/4] thermal: Add generic cpufreq cooling implementation

From: Amit Kachhap <hidden>
Date: 2012-03-13 05:07:48
Also in: linux-acpi, lkml

On 11 March 2012 09:41, Sundar [off-list ref] wrote:
Hi Amit,

I am new here; so please bear with my questions/doubts :)

On Wed, Feb 22, 2012 at 3:44 PM, Amit Daniel Kachhap
[off-list ref] wrote:
quoted
This patch adds support for generic cpu thermal cooling low level
implementations using frequency scaling up/down based on the request
from user. Different cpu related cooling devices can be registered by the
user and the binding of these cooling devices to the corresponding
"Different cpu related cooling devices": Do you mean cooling devices
for different CPUs (num_cpus) or are you referring to different
customers aka consumer drivers who could use this framework and impose
the cooling.
Correct but the consumer driver only has to use the other
thermal-sys.c functions. Only register cpu cooling devices is
implemented in this work.
quoted
trip points can be easily done as the registration API's return the
cooling device pointer. The user of these api's are responsible for
passing clipping frequency in percentages.
Why do you want to pass the clipping frequency in percentages? Wouldnt
it be simpler for any platform sensor driver to just pass the
frequency it wants to throttle the CPU?
Yes i also agree.
quoted
+
+    This interface function registers the cpufreq cooling device with the name
+    "thermal-cpufreq-%x". This api can support multiple instance of cpufreq cooling
+    devices.
When you refer to cooling devices, is it the number of instances
per-CPU that is supported? Sorry I am unable to follow.
CPU cooling apis can be used as below
1)per cpus if different frequency clipping is needed. so multiple
instance of this api can be called.
2)for all the cpus as provided with mask when same frequency clipping
is needed. In this case single instance is fine.
quoted
+       .polling_interval: polling interval for this cooling state.
+    tab_size: the total number of cooling state.
By cooling_state, I assume you are referring to the thermal state for
the platform? or only for the CPU?
Yes thermal state of the platform.
quoted
+    mask_val: all the allowed cpu's where frequency clipping can happen.
Why should this be a new variable? The policy->affected_cpus should be
the same as this IMO?
yes this should be same. I will check this.
quoted
+       help
+         This implements the generic cpu cooling mechanism through frequency
+         reduction, cpu hotplug and any other ways of reducing temperature. An
Apart from reducing the CPU frequency, (probably) CPU hotplug, what
other means of reducing CPU temperature? Or are you referring to any
platform temperature controls?
No only CPU related. Other control ways I thought was cpuidle with low
power states and cpu_power factor modifications used in the schedular.
It isnt very clear from the documentation (at least to me) if this is
only for CPU cooling or generic platform cooling.

Cheers!
--
---------
The views expressed in this email are personal and do not necessarily
echo my employers'.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help