<feed xmlns='http://www.w3.org/2005/Atom'>
<title>talos-op-linux/drivers/hwmon/coretemp.c, branch v3.1-rc3</title>
<subtitle>Talos™ II Linux sources for OpenPOWER</subtitle>
<id>https://git.raptorcs.com/git/talos-op-linux/atom?h=v3.1-rc3</id>
<link rel='self' href='https://git.raptorcs.com/git/talos-op-linux/atom?h=v3.1-rc3'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-op-linux/'/>
<updated>2011-07-28T07:17:36+00:00</updated>
<entry>
<title>hwmon: (coretemp) Add core/pkg threshold support to Coretemp</title>
<updated>2011-07-28T07:17:36+00:00</updated>
<author>
<name>Durgadoss R</name>
<email>durgadoss.r@intel.com</email>
</author>
<published>2011-07-12T11:07:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-op-linux/commit/?id=c814a4c7c4aad795835583344353963a0a673eb0'/>
<id>urn:sha1:c814a4c7c4aad795835583344353963a0a673eb0</id>
<content type='text'>
This patch adds the core and pkg support to coretemp.
These thresholds can be configured via the sysfs interfaces tempX_max
and tempX_max_hyst. An interrupt is generated when CPU temperature reaches
or crosses above tempX_max OR drops below tempX_max_hyst.

This patch is based on the documentation in IA Manual vol 3A, that can be
downloaded from here:
http://download.intel.com/design/processor/manuals/253668.pdf

Signed-off-by: Durgadoss R &lt;durgadoss.r@intel.com&gt;
Signed-off-by: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
</content>
</entry>
<entry>
<title>hwmon: (coretemp) Drop unused struct members</title>
<updated>2011-06-18T06:22:26+00:00</updated>
<author>
<name>Jean Delvare</name>
<email>khali@linux-fr.org</email>
</author>
<published>2011-06-07T19:14:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-op-linux/commit/?id=808b4e639eb00394de9989fabca23196c337ee75'/>
<id>urn:sha1:808b4e639eb00394de9989fabca23196c337ee75</id>
<content type='text'>
pdev_entry.cpu and pdev_entry.cpu_core_id aren't used anywhere in the
driver code so we can drop these struct members.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Cc: Fenghua Yu &lt;fenghua.yu@intel.com&gt;
Cc: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
Cc: Durgadoss R &lt;durgadoss.r@intel.com&gt;
Signed-off-by: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
</content>
</entry>
<entry>
<title>hwmon: (coretemp) Further relax temperature range checks</title>
<updated>2011-06-02T03:10:40+00:00</updated>
<author>
<name>Guenter Roeck</name>
<email>guenter.roeck@ericsson.com</email>
</author>
<published>2011-06-01T18:03:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-op-linux/commit/?id=bb9973e4e73f43bd86698483d0c3f7a362ff94ce'/>
<id>urn:sha1:bb9973e4e73f43bd86698483d0c3f7a362ff94ce</id>
<content type='text'>
Further relax temperature range checks after reading the IA32_TEMPERATURE_TARGET
register. If the register returns a value other than 0 in bits 16..32, assume
that the returned value is correct.

This change applies to both packet and core temperature limits.

Cc: Carsten Emde &lt;C.Emde@osadl.org&gt;
Cc: Fenghua Yu &lt;fenghua.yu@intel.com&gt;
Cc: Jean Delvare &lt;khali@linux-fr.org&gt;
Signed-off-by: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
Acked-by: Fenghua Yu &lt;fenghua.yu@intel.com&gt;
</content>
</entry>
<entry>
<title>hwmon: (coretemp) Fix TjMax detection for older CPUs</title>
<updated>2011-06-02T03:10:31+00:00</updated>
<author>
<name>Guenter Roeck</name>
<email>guenter.roeck@ericsson.com</email>
</author>
<published>2011-05-31T13:54:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-op-linux/commit/?id=4f5f71a7abe329bdad81ee6a8e4545054a7cc30a'/>
<id>urn:sha1:4f5f71a7abe329bdad81ee6a8e4545054a7cc30a</id>
<content type='text'>
Commit a321cedb12904114e2ba5041a3673ca24deb09c9 excludes CPU models 0xe, 0xf,
0x16, and 0x1a from TjMax temperature adjustment, even though several of those
CPUs are known to have TiMax other than 100 degrees C, and even though the code
in adjust_tjmax() explicitly handles those CPUs and points to a Web document
listing several of the affected CPU IDs.

Reinstate original TjMax adjustment if TjMax can not be determined using the
IA32_TEMPERATURE_TARGET register.

https://bugzilla.kernel.org/show_bug.cgi?id=32582

Signed-off-by: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
Cc: Huaxu Wan &lt;huaxu.wan@linux.intel.com&gt;
Cc: Carsten Emde &lt;C.Emde@osadl.org&gt;
Cc: Valdis Kletnieks &lt;valdis.kletnieks@vt.edu&gt;
Cc: Henrique de Moraes Holschuh &lt;hmh@hmh.eng.br&gt;
Cc: Yong Wang &lt;yong.y.wang@linux.intel.com&gt;
Cc: Rudolf Marek &lt;r.marek@assembler.cz&gt;
Cc: Fenghua Yu &lt;fenghua.yu@intel.com&gt;
Tested-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Acked-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Acked-by: Fenghua Yu &lt;fenghua.yu@intel.com&gt;
Cc: &lt;stable@kernel.org&gt; # .35.x .36.x .37.x .38.x .39.x
</content>
</entry>
<entry>
<title>hwmon: (coretemp) Relax target temperature range check</title>
<updated>2011-06-01T18:11:28+00:00</updated>
<author>
<name>Jean Delvare</name>
<email>khali@linux-fr.org</email>
</author>
<published>2011-05-31T19:50:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-op-linux/commit/?id=4c6e0f8101e62d8b2d01dc94b835a98b191a1454'/>
<id>urn:sha1:4c6e0f8101e62d8b2d01dc94b835a98b191a1454</id>
<content type='text'>
The current temperature range check of MSR_IA32_TEMPERATURE_TARGET
seems too strict to me, some TjMax values documented in
Documentation/hwmon/coretemp wouldn't pass. Relax the check so that
all the documented values pass.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Cc: Carsten Emde &lt;C.Emde@osadl.org&gt;
Cc: Fenghua Yu &lt;fenghua.yu@intel.com&gt;
Signed-off-by: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
</content>
</entry>
<entry>
<title>hwmon: (coretemp) Fix section mismatch</title>
<updated>2011-05-27T09:24:54+00:00</updated>
<author>
<name>Jean Delvare</name>
<email>khali@linux-fr.org</email>
</author>
<published>2011-05-26T10:01:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-op-linux/commit/?id=582e1b270f6db93007f9af86d4f28fdad3da0505'/>
<id>urn:sha1:582e1b270f6db93007f9af86d4f28fdad3da0505</id>
<content type='text'>
chk_ucode_version() is only called from coretemp_probe() which is
__devinit, so it can be marked __devinit too.

Signed-off-by: Jean Delvare &lt;khali@linux-fr.org&gt;
Cc: Durgadoss R &lt;durgadoss.r@intel.com&gt;
Cc: Fenghua Yu &lt;fenghua.yu@intel.com&gt;
Cc: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
Signed-off-by: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
</content>
</entry>
<entry>
<title>hwmon: (coretemp) Update comments describing the handling of HT CPUs</title>
<updated>2011-05-27T09:24:53+00:00</updated>
<author>
<name>Guenter Roeck</name>
<email>guenter.roeck@ericsson.com</email>
</author>
<published>2011-05-23T20:52:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-op-linux/commit/?id=6777b9e47e4daf7116ec12b69e9b5cc980809217'/>
<id>urn:sha1:6777b9e47e4daf7116ec12b69e9b5cc980809217</id>
<content type='text'>
Update comments describing the handling of HT CPUs based on review feedback.

Signed-off-by: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
Cc: Fenghua Yu &lt;fenghua.yu@intel.com&gt;
Cc: Durgadoss R &lt;durgadoss.r@intel.com&gt;
Acked-by: Jean Delvare &lt;khali@linux-fr.org&gt;
</content>
</entry>
<entry>
<title>hwmon: (coretemp) Initialize sysfs attributes</title>
<updated>2011-05-27T09:24:53+00:00</updated>
<author>
<name>Sergey Senozhatsky</name>
<email>sergey.senozhatsky@gmail.com</email>
</author>
<published>2011-05-24T11:28:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-op-linux/commit/?id=4258781ac720ff8f2fa6c34c1bd06a0cb8562188'/>
<id>urn:sha1:4258781ac720ff8f2fa6c34c1bd06a0cb8562188</id>
<content type='text'>
Initialize sysfs attrs before device_create_file() call to suppress lockdep_init_map()
warning:

[    3.653628] WARNING: at kernel/lockdep.c:2885 lockdep_init_map+0xea/0x43c()
[    3.653698] Modules linked in:
[    3.654835] Pid: 1, comm: swapper Not tainted 2.6.39-dbg-git8-05624-g46187f8 #576
[    3.656014] Call Trace:
[    3.657139]  [&lt;ffffffff8103e4b4&gt;] warn_slowpath_common+0x7e/0x96
[    3.658298]  [&lt;ffffffff8103e4e1&gt;] warn_slowpath_null+0x15/0x17
[    3.659460]  [&lt;ffffffff8106d7b9&gt;] lockdep_init_map+0xea/0x43c
[    3.660616]  [&lt;ffffffff81163c1a&gt;] sysfs_add_file_mode+0x5d/0xa8
[    3.661785]  [&lt;ffffffff81163c71&gt;] sysfs_add_file+0xc/0xe
[    3.662929]  [&lt;ffffffff81163d26&gt;] sysfs_create_file+0x23/0x25
[    3.664045]  [&lt;ffffffff813724d1&gt;] device_create_file+0x14/0x16
[    3.665172]  [&lt;ffffffff81460ed4&gt;] coretemp_probe+0xf9/0x185
[    3.666306]  [&lt;ffffffff8137638e&gt;] platform_drv_probe+0x12/0x14
[    3.667420]  [&lt;ffffffff81375321&gt;] driver_probe_device+0xb0/0x14b
[    3.668542]  [&lt;ffffffff8137546d&gt;] __device_attach+0x35/0x3a
[    3.669710]  [&lt;ffffffff81375438&gt;] ? __driver_attach+0x7c/0x7c
[    3.670816]  [&lt;ffffffff8137426b&gt;] bus_for_each_drv+0x54/0x88
[    3.671921]  [&lt;ffffffff81375231&gt;] device_attach+0x77/0x9b
[    3.673027]  [&lt;ffffffff81374aef&gt;] bus_probe_device+0x22/0x39
[    3.674137]  [&lt;ffffffff81373235&gt;] device_add+0x3c1/0x550
[    3.675249]  [&lt;ffffffff81371ed9&gt;] ? dev_set_name+0x3c/0x3e
[    3.676371]  [&lt;ffffffff813769f3&gt;] platform_device_add+0x10c/0x156
[    3.677491]  [&lt;ffffffff8146af9c&gt;] get_core_online+0xab/0x16e
[    3.678608]  [&lt;ffffffff81ad8070&gt;] coretemp_init+0x4b/0x80
[    3.679724]  [&lt;ffffffff81ad8025&gt;] ? hwmon_init+0xee/0xee
[    3.680853]  [&lt;ffffffff8100020a&gt;] do_one_initcall+0x7a/0x13c
[    3.681975]  [&lt;ffffffff81aaac74&gt;] kernel_init+0xe1/0x15b
[    3.683081]  [&lt;ffffffff8147e4e4&gt;] kernel_thread_helper+0x4/0x10
[    3.684174]  [&lt;ffffffff8102d48c&gt;] ? finish_task_switch+0x76/0xf0
[    3.685266]  [&lt;ffffffff81477918&gt;] ? retint_restore_args+0x13/0x13
[    3.686356]  [&lt;ffffffff81aaab93&gt;] ? start_kernel+0x3ee/0x3ee
[    3.687425]  [&lt;ffffffff8147e4e0&gt;] ? gs_change+0x13/0x13
[    3.688489] ---[ end trace 7392ad3e6a92ae39 ]---

Signed-off-by: Sergey Senozhatsky &lt;sergey.senozhatsky@gmail.com&gt;
Signed-off-by: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
</content>
</entry>
<entry>
<title>hwmon: (coretemp) Add comments describing the handling of HT CPUs</title>
<updated>2011-05-24T04:11:14+00:00</updated>
<author>
<name>Guenter Roeck</name>
<email>guenter.roeck@ericsson.com</email>
</author>
<published>2011-05-23T21:05:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-op-linux/commit/?id=f4e0bcf06b9771af04273473592aeeb860ca2816'/>
<id>urn:sha1:f4e0bcf06b9771af04273473592aeeb860ca2816</id>
<content type='text'>
The coretemp driver provides a single set of device attributes for each
physical core of a HT CPU to avoid duplicate sensors.  This
functionality was introduced with commit d883b9f09772 ("hwmon:
(coretemp) Skip duplicate CPU entries").

Commit e40cc4bdfd4b ("x86/hwmon: register alternate sibling upon CPU
removal") extends this functionality to register the HT sibling of a CPU
which is taken offline, to ensure that sensor attributes are provided if
at least one HT sibling of a core is online.

Add comments into the code describing the functionality in some more
detail.

Signed-off-by: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
Cc: Fenghua Yu &lt;fenghua.yu@intel.com&gt;
Cc: Durgadoss R &lt;durgadoss.r@intel.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>hwmon: (coretemp) Fix compile error if CONFIG_SMP is not defined</title>
<updated>2011-05-23T18:59:08+00:00</updated>
<author>
<name>Guenter Roeck</name>
<email>guenter.roeck@ericsson.com</email>
</author>
<published>2011-05-23T19:06:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-op-linux/commit/?id=bb74e8ca352eecefdc5c1a9ebab01f18aa2f6f3c'/>
<id>urn:sha1:bb74e8ca352eecefdc5c1a9ebab01f18aa2f6f3c</id>
<content type='text'>
cpu_sibling_mask() is not defined unless CONFIG_SMP is defined, so it
must not be used directly in the code without ifdef protection.

To solve the problem and avoid ifdefs in the code, define
for_each_sibling() and use it instead.

Signed-off-by: Guenter Roeck &lt;guenter.roeck@ericsson.com&gt;
Cc: Fenghua Yu &lt;fenghua.yu@intel.com&gt;
Cc: Durgadoss R &lt;durgadoss.r@intel.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
