<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/Documentation/thermal, branch v3.7</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>hwmon: exynos4: move thermal sensor driver to driver/thermal directory</title>
<updated>2012-09-24T06:44:38+00:00</updated>
<author>
<name>Amit Daniel Kachhap</name>
<email>amit.kachhap@linaro.org</email>
</author>
<published>2012-08-16T11:41:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c48cbba6fee3587bdfe77ef850a1a0aa30a2a60f'/>
<id>c48cbba6fee3587bdfe77ef850a1a0aa30a2a60f</id>
<content type='text'>
This movement is needed because the hwmon entries and corresponding sysfs
interface is a duplicate of utilities already provided by
driver/thermal/thermal_sys.c.  The goal is to place it in thermal folder
and add necessary functions to use the in-kernel thermal interfaces.

Signed-off-by: Amit Daniel Kachhap &lt;amit.kachhap@linaro.org&gt;
Acked-by: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
Cc: SangWook Ju &lt;sw.ju@samsung.com&gt;
Cc: Durgadoss &lt;durgadoss.r@intel.com&gt;
Cc: Len Brown &lt;lenb@kernel.org&gt;
Cc: Jean Delvare &lt;khali@linux-fr.org&gt;
Cc: Kyungmin Park &lt;kmpark@infradead.org&gt;
Cc: Kukjin Kim &lt;kgene.kim@samsung.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Amit Daniel Kachhap &lt;amit.daniel@samsung.com&gt;
Signed-off-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This movement is needed because the hwmon entries and corresponding sysfs
interface is a duplicate of utilities already provided by
driver/thermal/thermal_sys.c.  The goal is to place it in thermal folder
and add necessary functions to use the in-kernel thermal interfaces.

Signed-off-by: Amit Daniel Kachhap &lt;amit.kachhap@linaro.org&gt;
Acked-by: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
Cc: SangWook Ju &lt;sw.ju@samsung.com&gt;
Cc: Durgadoss &lt;durgadoss.r@intel.com&gt;
Cc: Len Brown &lt;lenb@kernel.org&gt;
Cc: Jean Delvare &lt;khali@linux-fr.org&gt;
Cc: Kyungmin Park &lt;kmpark@infradead.org&gt;
Cc: Kukjin Kim &lt;kgene.kim@samsung.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Amit Daniel Kachhap &lt;amit.daniel@samsung.com&gt;
Signed-off-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>thermal: add generic cpufreq cooling implementation</title>
<updated>2012-09-24T06:44:38+00:00</updated>
<author>
<name>Amit Daniel Kachhap</name>
<email>amit.kachhap@linaro.org</email>
</author>
<published>2012-08-16T11:41:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=023614183768a7ac62898bded5ec6c0c9fecbdd9'/>
<id>023614183768a7ac62898bded5ec6c0c9fecbdd9</id>
<content type='text'>
This patchset introduces a new generic cooling device based on cpufreq
that can be used on non-ACPI platforms.  As a proof of concept, we have
drivers for the following platforms using this mechanism now:

 * Samsung Exynos (Exynos4 and Exynos5) in the current patchset.
 * Freescale i.MX (git://git.linaro.org/people/amitdanielk/linux.git imx6q_thermal)

There is a small change in cpufreq cooling registration APIs, so a minor
change is needed for Freescale platforms.

Brief Description:

1) The generic cooling devices code is placed inside driver/thermal/*
   as placing inside acpi folder will need un-necessary enabling of acpi
   code.  This code is architecture independent.

2) This patchset adds generic cpu cooling low level implementation
   through frequency clipping.  In future, other cpu related cooling
   devices may be added here.  An ACPI version of this already exists
   (drivers/acpi/processor_thermal.c) .But this will be useful for
   platforms like ARM using the generic thermal interface along with the
   generic cpu cooling devices.  The cooling device registration API's
   return cooling device pointers which can be easily binded with the
   thermal zone trip points.  The important APIs exposed are,

   a) struct thermal_cooling_device *cpufreq_cooling_register(
        struct cpumask *clip_cpus)
   b) void cpufreq_cooling_unregister(struct thermal_cooling_device *cdev)

3) Samsung exynos platform thermal implementation is done using the
   generic cpu cooling APIs and the new trip type.  The temperature sensor
   driver present in the hwmon folder(registered as hwmon driver) is moved
   to thermal folder and registered as a thermal driver.

A simple data/control flow diagrams is shown below,

Core Linux thermal &lt;-----&gt;  Exynos thermal interface &lt;----- Temperature Sensor
          |                             |
         \|/                            |
  Cpufreq cooling device &lt;---------------

TODO:
*Will send the DT enablement patches later after the driver is merged.

This patch:

Add support for generic cpu thermal cooling low level implementations
using frequency scaling up/down based on the registration parameters.
Different cpu related cooling devices can be registered by the user and
the binding of these cooling devices to the corresponding trip points can
be easily done as the registration APIs return the cooling device pointer.
The user of these APIs are responsible for passing clipping frequency .
The drivers can also register to recieve notification about any cooling
action called.

[akpm@linux-foundation.org: fix comment layout]
Signed-off-by: Amit Daniel Kachhap &lt;amit.kachhap@linaro.org&gt;
Cc: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
Cc: SangWook Ju &lt;sw.ju@samsung.com&gt;
Cc: Durgadoss &lt;durgadoss.r@intel.com&gt;
Cc: Len Brown &lt;lenb@kernel.org&gt;
Cc: Jean Delvare &lt;khali@linux-fr.org&gt;
Cc: Kyungmin Park &lt;kmpark@infradead.org&gt;
Cc: Kukjin Kim &lt;kgene.kim@samsung.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Amit Daniel Kachhap &lt;amit.daniel@samsung.com&gt;
Signed-off-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patchset introduces a new generic cooling device based on cpufreq
that can be used on non-ACPI platforms.  As a proof of concept, we have
drivers for the following platforms using this mechanism now:

 * Samsung Exynos (Exynos4 and Exynos5) in the current patchset.
 * Freescale i.MX (git://git.linaro.org/people/amitdanielk/linux.git imx6q_thermal)

There is a small change in cpufreq cooling registration APIs, so a minor
change is needed for Freescale platforms.

Brief Description:

1) The generic cooling devices code is placed inside driver/thermal/*
   as placing inside acpi folder will need un-necessary enabling of acpi
   code.  This code is architecture independent.

2) This patchset adds generic cpu cooling low level implementation
   through frequency clipping.  In future, other cpu related cooling
   devices may be added here.  An ACPI version of this already exists
   (drivers/acpi/processor_thermal.c) .But this will be useful for
   platforms like ARM using the generic thermal interface along with the
   generic cpu cooling devices.  The cooling device registration API's
   return cooling device pointers which can be easily binded with the
   thermal zone trip points.  The important APIs exposed are,

   a) struct thermal_cooling_device *cpufreq_cooling_register(
        struct cpumask *clip_cpus)
   b) void cpufreq_cooling_unregister(struct thermal_cooling_device *cdev)

3) Samsung exynos platform thermal implementation is done using the
   generic cpu cooling APIs and the new trip type.  The temperature sensor
   driver present in the hwmon folder(registered as hwmon driver) is moved
   to thermal folder and registered as a thermal driver.

A simple data/control flow diagrams is shown below,

Core Linux thermal &lt;-----&gt;  Exynos thermal interface &lt;----- Temperature Sensor
          |                             |
         \|/                            |
  Cpufreq cooling device &lt;---------------

TODO:
*Will send the DT enablement patches later after the driver is merged.

This patch:

Add support for generic cpu thermal cooling low level implementations
using frequency scaling up/down based on the registration parameters.
Different cpu related cooling devices can be registered by the user and
the binding of these cooling devices to the corresponding trip points can
be easily done as the registration APIs return the cooling device pointer.
The user of these APIs are responsible for passing clipping frequency .
The drivers can also register to recieve notification about any cooling
action called.

[akpm@linux-foundation.org: fix comment layout]
Signed-off-by: Amit Daniel Kachhap &lt;amit.kachhap@linaro.org&gt;
Cc: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
Cc: SangWook Ju &lt;sw.ju@samsung.com&gt;
Cc: Durgadoss &lt;durgadoss.r@intel.com&gt;
Cc: Len Brown &lt;lenb@kernel.org&gt;
Cc: Jean Delvare &lt;khali@linux-fr.org&gt;
Cc: Kyungmin Park &lt;kmpark@infradead.org&gt;
Cc: Kukjin Kim &lt;kgene.kim@samsung.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Amit Daniel Kachhap &lt;amit.daniel@samsung.com&gt;
Signed-off-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Thermal: set upper and lower limits</title>
<updated>2012-09-24T06:44:36+00:00</updated>
<author>
<name>Zhang Rui</name>
<email>rui.zhang@intel.com</email>
</author>
<published>2012-06-26T08:35:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=9d99842f99d847191ebd0c28469d2c70fcc5bf9e'/>
<id>9d99842f99d847191ebd0c28469d2c70fcc5bf9e</id>
<content type='text'>
set upper and lower limits when binding
a thermal cooling device to a thermal zone device.

Signed-off-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
Reviewed-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
Reviewed-by: Eduardo Valentin &lt;eduardo.valentin@ti.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
set upper and lower limits when binding
a thermal cooling device to a thermal zone device.

Signed-off-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
Reviewed-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
Reviewed-by: Eduardo Valentin &lt;eduardo.valentin@ti.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Thermal: Documentation update</title>
<updated>2012-07-25T03:20:40+00:00</updated>
<author>
<name>Zhang Rui</name>
<email>rui.zhang@intel.com</email>
</author>
<published>2012-07-25T02:11:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=8eaa8d6ca27788aa23659082362a608c1fabcdfe'/>
<id>8eaa8d6ca27788aa23659082362a608c1fabcdfe</id>
<content type='text'>
With commit 6503e5df08008b9a47022b5e9ebba658c8fa69af,
the value of /sys/class/thermal/thermal_zoneX/mode has been changed
from user/kernel to enabled/disabled.
Update the documentation so that users won't be confused.

Signed-off-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
With commit 6503e5df08008b9a47022b5e9ebba658c8fa69af,
the value of /sys/class/thermal/thermal_zoneX/mode has been changed
from user/kernel to enabled/disabled.
Update the documentation so that users won't be confused.

Signed-off-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Thermal: Add Hysteresis attributes</title>
<updated>2012-07-25T03:19:26+00:00</updated>
<author>
<name>Durgadoss R</name>
<email>dugardoss.r@intel.com</email>
</author>
<published>2012-07-25T02:10:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=27365a6c7d64a3bba22ee62109e4a071bbd7f933'/>
<id>27365a6c7d64a3bba22ee62109e4a071bbd7f933</id>
<content type='text'>
The Linux Thermal Framework does not support hysteresis
attributes. Most thermal sensors, today, have a
hysteresis value associated with trip points.

This patch adds hysteresis attributes on a per-trip-point
basis, to the Thermal Framework. These attributes are
optionally writable.

Signed-off-by: Durgadoss R &lt;durgadoss.r@intel.com&gt;
Signed-off-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The Linux Thermal Framework does not support hysteresis
attributes. Most thermal sensors, today, have a
hysteresis value associated with trip points.

This patch adds hysteresis attributes on a per-trip-point
basis, to the Thermal Framework. These attributes are
optionally writable.

Signed-off-by: Durgadoss R &lt;durgadoss.r@intel.com&gt;
Signed-off-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Thermal: Make Thermal trip points writeable</title>
<updated>2012-07-25T03:17:20+00:00</updated>
<author>
<name>Durgadoss R</name>
<email>dugardoss.r@intel.com</email>
</author>
<published>2012-07-25T02:10:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=c56f5c0342dfee11a1a13d2f5bb7618de5b17590'/>
<id>c56f5c0342dfee11a1a13d2f5bb7618de5b17590</id>
<content type='text'>
Some of the thermal drivers using the Generic Thermal Framework
require (all/some) trip points to be writeable. This patch makes
the trip point temperatures writeable on a per-trip point basis,
and modifies the required function call in thermal.c. This patch
also updates the Documentation to reflect the new change.

Signed-off-by: Durgadoss R &lt;durgadoss.r@intel.com&gt;
Signed-off-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Some of the thermal drivers using the Generic Thermal Framework
require (all/some) trip points to be writeable. This patch makes
the trip point temperatures writeable on a per-trip point basis,
and modifies the required function call in thermal.c. This patch
also updates the Documentation to reflect the new change.

Signed-off-by: Durgadoss R &lt;durgadoss.r@intel.com&gt;
Signed-off-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>thermal: Rename generate_netlink_event</title>
<updated>2012-01-23T08:15:25+00:00</updated>
<author>
<name>Jean Delvare</name>
<email>khali@linux-fr.org</email>
</author>
<published>2011-11-04T09:31:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=2d58d7ea9164da59d0ea82fdf80e3ababe52d58c'/>
<id>2d58d7ea9164da59d0ea82fdf80e3ababe52d58c</id>
<content type='text'>
It doesn't seem right for the thermal subsystem to export a symbol
named generate_netlink_event. This function is thermal-specific and
its name should reflect that fact. Rename it to
thermal_generate_netlink_event.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Acked-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
Acked-by: R.Durgadoss &lt;durgadoss.r@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It doesn't seem right for the thermal subsystem to export a symbol
named generate_netlink_event. This function is thermal-specific and
its name should reflect that fact. Rename it to
thermal_generate_netlink_event.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Acked-by: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;
Acked-by: R.Durgadoss &lt;durgadoss.r@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>thermal: Add event notification to thermal framework</title>
<updated>2011-01-12T05:08:35+00:00</updated>
<author>
<name>R.Durgadoss</name>
<email>durgadoss.r@intel.com</email>
</author>
<published>2010-10-26T22:03:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=4cb18728709683c91a5f6f8d5f337bfb498b089a'/>
<id>4cb18728709683c91a5f6f8d5f337bfb498b089a</id>
<content type='text'>
This patch adds event notification support to the generic
thermal sysfs framework in the kernel. The notification is in the
form of a netlink event.

Signed-off-by: R.Durgadoss &lt;durgadoss.r@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch adds event notification support to the generic
thermal sysfs framework in the kernel. The notification is in the
form of a netlink event.

Signed-off-by: R.Durgadoss &lt;durgadoss.r@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>thermal: add sanity check for the passive attribute</title>
<updated>2009-11-05T23:18:10+00:00</updated>
<author>
<name>Frans Pop</name>
<email>elendil@planet.nl</email>
</author>
<published>2009-10-26T07:39:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=3d8e3ad879441ae14c5957b933028daf39d252b0'/>
<id>3d8e3ad879441ae14c5957b933028daf39d252b0</id>
<content type='text'>
Values below 1000 milli-celsius don't make sense and can cause the
system to go into a thermal heart attack: the actual temperature
will always be lower and thus the system will be throttled down to
its lowest setting.

An additional problem is that values below 1000 will show as 0 in
/proc/acpi/thermal/TZx/trip_points:passive.

cat passive
0
echo -n 90 &gt;passive
bash: echo: write error: Invalid argument
echo -n 90000 &gt;passive
cat passive
90000

Signed-off-by: Frans Pop &lt;elendil@planet.nl&gt;
Acked-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Values below 1000 milli-celsius don't make sense and can cause the
system to go into a thermal heart attack: the actual temperature
will always be lower and thus the system will be throttled down to
its lowest setting.

An additional problem is that values below 1000 will show as 0 in
/proc/acpi/thermal/TZx/trip_points:passive.

cat passive
0
echo -n 90 &gt;passive
bash: echo: write error: Invalid argument
echo -n 90000 &gt;passive
cat passive
90000

Signed-off-by: Frans Pop &lt;elendil@planet.nl&gt;
Acked-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>thermal: sysfs-api.txt - document passive attribute for thermal zones</title>
<updated>2009-11-05T23:11:18+00:00</updated>
<author>
<name>Frans Pop</name>
<email>elendil@planet.nl</email>
</author>
<published>2009-10-26T07:39:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=29226ed3c3b5cd0b2b0b1fb40ffeac3f796b80e9'/>
<id>29226ed3c3b5cd0b2b0b1fb40ffeac3f796b80e9</id>
<content type='text'>
Signed-off-by: Frans Pop &lt;elendil@planet.nl&gt;
Acked-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Frans Pop &lt;elendil@planet.nl&gt;
Acked-by: Zhang Rui &lt;rui.zhang@intel.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
