<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">With no current tools yet identified, I
thought I'd see if I could manually change a trip point temp and
type.<br>
<br>
From /sys/class/thermal/thermal_zone0 I tried:<br>
$ echo -n 40 > trip_point_1_temp<br>
bash: trip_point_1_temp: Permission denied<br>
$ echo -n active > trip_point_1_type<br>
bash: trip_point_1_temp: Permission denied<br>
<br>
I tried the same commands with sudo, with the same results.<br>
<br>
Some things in /sys are meant to be read-only, but my
understanding is that the thermal_zone attributes should be
writable.<br>
<br>
Anyone know why this happens?<br>
<br>
On 6/4/2014 1:25 PM, John Hupp wrote:<br>
</div>
<blockquote cite="mid:538F5682.6090802@prpcompany.com" type="cite">
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
<div class="moz-cite-prefix">Further research shows that the use
of /proc/acpi/thermal_zone has been deprecated for some time.
The new location is /sys/class/thermal.<br>
<br>
I have not found any specific reference about the current state
of usage of /proc/acpi/fan, but from some reading and kernel.org
(below), I think it is probably deprecated as well.<br>
<br>
But at least on the first point, many important reference pages
are outdated, such as <a moz-do-not-send="true"
href="https://wiki.ubuntu.com/DebuggingACPI">https://wiki.ubuntu.com/DebuggingACPI</a>
and <a moz-do-not-send="true"
href="https://01.org/linux-acpi/documentation/debug-how-isolate-linux-acpi-issues">https://01.org/linux-acpi/documentation/debug-how-isolate-linux-acpi-issues</a>
(at the Intel Open Source Technology Center).<br>
<br>
The current kernel-level documentation is at <a
moz-do-not-send="true"
href="https://www.kernel.org/doc/Documentation/thermal">https://www.kernel.org/doc/Documentation/thermal</a>,
and that's helpful reading to get some idea of what the contents
of /sys/class/thermal mean.<br>
<br>
But what we need is something current that identifies user-space
tools and explains how to use them. Acpitool seems like the
first candidate, if it properly supports the current
implementation. Its homepage is given in Synaptic as <a
moz-do-not-send="true" class="moz-txt-link-freetext"
href="http://freeunix.dyndns.org:8088/site2/acpitool.shtml">http://freeunix.dyndns.org:8088/site2/acpitool.shtml</a>,
but that site no longer exists. Acpitool also installs acpid,
and the homepage for that is given as <a moz-do-not-send="true"
class="moz-txt-link-freetext"
href="http://www.tedfelix.com/linux/acpid-netlink.html">http://www.tedfelix.com/linux/acpid-netlink.html</a>,
but that now redirects to <a moz-do-not-send="true"
class="moz-txt-link-freetext"
href="http://sourceforge.net/p/acpid2">http://sourceforge.net/p/acpid2</a>.
I had a look at the wiki there, but saw nothing that helps for
this purpose.<br>
<br>
I installed acpitool just to test-drive it. 'acpitool -e'
reports everything, but it shows Fan and Thermal info as <not
available> . It also reports concerning Show_CPU_Info:
"could not read /proc/acpi/processor/. Make sure your kernel
has ACPI processor support enabled."<br>
<br>
So it seems apparent that acpitool has not been properly or
fully updated for the kernel implementation of acpi in kernel
version 2.7 (actually 2.6-something).<br>
<br>
<hr size="2" width="100%"><br>
Concerning my Lenovo, booting into Windows I see in Device
Manager an ACPI Thermal Zone and a number of other ACPI-related
devices.<br>
<br>
My initial conclusion when I saw that the Lenovo BIOS shows no
thermal management settings was that Lenovo didn't want people
fiddling with them and chose not to expose them. Now I think
that thermal management via the BIOS and SMM is not their
provision. Rather, their provision is thermal management via
ACPI, governed in the operating system.<br>
<br>
On 6/1/2014 1:25 PM, John Hupp wrote:<br>
</div>
<blockquote cite="mid:538B6203.2020909@prpcompany.com" type="cite">
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
<div class="moz-cite-prefix">I posted some of this material in
the thread "Lubuntu: acerhdf.conf," but am starting a new
thread that better reflects what I'm trying to work out.<br>
<br>
According to my current understanding, fans may be controlled
by:<br>
1) BIOS/UEFI<br>
2) Bus signalling to PWM controllers governing fans [the
lm-sensors package does this]<br>
3) System Management Mode (SMM) [the i8kutils package does
this for many Dell laptops]<br>
4) ACPI<br>
<br>
The above is undoubtedly only a rough description that lacks
precision, but AFAIK it describes well enough the avenues to
solutions.<br>
<br>
BIOS/UEFI - For this purpose I am working with a Lenovo 3000
C200 laptop flashed to the latest available version. Its BIOS
exposes no power/thermal management settings. I have heard of
Windows programs that allow reading and even editing of BIOS
settings, and I thought it would be useful to at least know
what the hidden BIOS thermal management settings were. Even
better if I could edit them via Linux. I found dmidecode,
biosdecode and the smbios-utils suite, but none of them could
report, much less edit, the thermal management settings. The
coreboot.org project is a BIOS-replacement project, but
support is motherboard specific, the list is short, and my
model is not on the list. There are also some vendor-specific
Linux BIOS tools, but these all seem to be just for flashing
the BIOS. So unless I have missed something, it seems like
that avenue comes to a dead end.<br>
<br>
lm-sensors - It discovers a sensor for the CPU, loads the
coretemp module, and reports that temperature. But pwmconfig
reports "There are no pwm-capable sensor modules installed."
And the lm-sensors documentation notes in a couple places that
it won't work on most laptops because they lack PWM
controllers, and "you have to use acpi instead." So that's
also a dead end.<br>
<br>
i8kutils - Many or most Dell laptops are reported to lack not
only PWM controllers but also support for ACPI fan control, so
i8kutils uses a different method, SMM, to control the fans.
But the package aims to support only Dell laptops, and seems
to rely on knowledge of specific motherboard architectures.
Another dead end for my purposes.<br>
<br>
ACPI - <a moz-do-not-send="true"
href="https://wiki.ubuntu.com/DebuggingACPI">https://wiki.ubuntu.com/DebuggingACPI</a>
has the following:<br>
<hr size="2" width="100%"><b>Fan Issues </b><b><span
class="anchor" id="line-37"></span></b><b><span
class="anchor" id="line-38"></span></b>
<p class="line874">These usually relate to the fan spinning
too often or too fast. Another indication may be that the
temperature remains high even when the fans are spinning. <span
class="anchor" id="line-39"></span><span class="anchor"
id="line-40"></span></p>
<ol type="1">
<li>Determine if the system has ACPI-based fan control <span
class="anchor" id="line-41"></span>
<ul>
<li>
<p class="line862">if <strong>/proc/acpi/fan</strong>
is empty and <strong>/proc/acpi/thermal_zone/*/trip_points</strong>
has no active trip points (those starting with "AC")
then there is no ACPI-based fan control on your
system <span class="anchor" id="line-42"></span></p>
</li>
</ul>
</li>
<li>If the system does have an ACPI-based fan control try
booting with kernel parameter options listed above </li>
</ol>
<hr size="2" width="100%">On this laptop, neither
/proc/acpi/fan nor /proc/acpi/thermal_zone/*/trip_points even
exist. <br>
<br>
But /sys/class/thermal/thermal_zone0 has cdev0_trip_point,
cdev1_trip_point, trip_point_0_temp, trip_point_1_temp,
trip_point_0_type, trip_point_1_type all exist. <br>
<br>
Dmidecode or biosdecode reported that the laptop supports
ACPI, so the question may be whether it supports ACPI fan
control in particular.<br>
<br>
I don't my Linux fundamentals regarding the purposes of /proc
and /sys, but have I just confirmed that this laptop has no
ACPI fan control support, or could it be that trip_points are
supported from more than one location?<br>
</div>
<br>
</blockquote>
<br>
<br>
<fieldset class="mimeAttachmentHeader"></fieldset>
<br>
</blockquote>
<br>
</body>
</html>