Scheduled Maintenance: We are aware of an issue with Google, AOL, and Yahoo services as email providers which are blocking new registrations. We are trying to fix the issue and we have several internal and external support tickets in process to resolve the issue. Please see: viewtopic.php?t=158230

 

 

 

How To Undervolt on Debian Squeeze

Share your HowTo, Documentation, Tips and Tricks. Not for support questions!.
Post Reply
Message
Author
oOarthurOo
Posts: 544
Joined: 2008-10-25 12:00
Location: Canada

How To Undervolt on Debian Squeeze

#1 Post by oOarthurOo »

Update: Jun 17, 2010 Completely new guide out, available here

This how-to was originally published as "How To Undervolt on Debian Lenny", and was available as either a pdf or odt file. I hope the html version available from the link above will prove more satisfactory.

Please use this thread to request support or suggest changes. Previous documents are no longer being supported, however I will leave the information up in case anyone is still interested.

Best,
Arthur

HISTORICAL INFORMATION ONLY
Please use this link for the current version of the guide.

Update: Nov. 23 Version 1.2 has been published, fixing a command during build and install, and adding comments re: applying settings after latest Lenny kernel upgrade. The links have been updated, and links to version 1.1 have been removed.

Update: Nov. 22 The document has been updated to reflect feedback received so far. The links have been updated and links to version 1.0 removed.

I wrote a document about the subject before bothering to check if the forums supported attachments. Here's a link to the how-to, which I'll keep up to date with any changes that are made to the document.

I've included a pdf version for those who just want to read the guide, and the odt file for those who wish to edit / adapt it to suit their own needs.

ODT File
http://rapidshare.com/files/166546798/PHC.odt

PDF File
http://rapidshare.com/files/166546799/PHC.pdf
Last edited by oOarthurOo on 2010-06-18 04:47, edited 4 times in total.

oompa
Posts: 25
Joined: 2008-11-14 15:39

#2 Post by oompa »

update: This post is an automatic conversion to bbcode of the first draft of the document, which has been superceded by version 1.2, the updated version is available a bit further in this thread.
--oompa
Note: I find posting rapidshare links to odt/pdf rather useless, so I took the liberty to use an automatic conversion tool and I'm posting the bbcode result here. Might not be perfect but at least it can be read directly and without installation of additional software or running a graphical environment. Here it is:
--oompa

How To Undervolt on Debian Lenny

How To Undervolt on Debian Lenny

Introduction

This guide is based on notes that I took while trying to figure out how to undervolt my cpu. I can't guarantee that it will work for you. I should also warn you that you'll be doing things to your computer that could render it unstable, lead to data loss and / or require a complete reinstall. Proceed with caution.

In this guide I use aptitude, but if you use apt just substitute the appropriate command. Text that is set-off in blue indicates a terminal command to be run as a regular user. Similar text in red means run it as root.

This guide is licensed under the GNU Free Document License.

Further reading

Here is a list of online resources that were consulted during the preparation of this guide. If you glance at them then you will know as much as me about the subject:

How To Compile A Kernel on Debian Etch. (2007)

Linux PHC Installation Guide. (2008)

Ares Drake's How-To Undervolt. (2008)

Changes & Acknowledgements

Thanks to The Fallen for helping me out on the PHC forums. I think he might also be a developer for the project, so thanks to him for the patch as well. Step five in this document is pretty much a copy of the PHC installation guide. I've included it here for those who don't wish to recompile their kernel, but I've not tested it myself. Thanks also to some fine folks at #debian on IRC, who helped me with some compiling problems.


Step 1 – Is your cpu compatible?

There are three ways to check this, the first being to simply google around and see if it's compatible with the PHC patch. Even if you are sure that your processor is supported you should check it using the second way; the read_msr tool, as it will later allow us to confirm that the undervolting is working as expected.

First, download the read_msr tool from the PHC website.

Download the read_msr tool from the PHC website

Extract it, then in a terminal cd to the extracted read_msr.py tool, and do the following:

modprobe msr

chmod 777 read_msr.py

./read_msr.py


You should see something like this:

MSRTOOL V0.1 started...
Displaying data for cpu cpu0

/---------------------------------------
| Current VID: 19
|
Current FID: 6
| Target VID: 19
| Target FID: 6
|
Highest VID: 44
| Highest FID: 12
| Lowest VID: 19
|
Lowest FID: 6
\---------------------------------------


It doesn't really matter what the numbers are, as long as you get some similar output. If you have two cores you should see one of those for each.

The third way to test it is to run this in a terminal:

lsmod | grep acpi_cpufreq

You should see something like this:

acpi_cpufreq 6796 1
freq_table 4224 3
acpi_cpufreq,cpufreq_ondemand,cpufreq_stats
processor 32576 4
acpi_cpufreq,thermal



Again, if you don't see the output chances are this won't work for you. Work on the PHC patch is ongoing and it may be that your processor is supported with the latest patch using the latest kernel, but you'll have to check with the phc website before continuing.

Step 2 – Get a Baseline


Since we are making these changes to obtain certain objectives (lower power, longer battery life, cooler temperatures), it makes sense to take an initial measurement of these things. Let us take an initial measurement of our cpu temperatures and some other information about our power-usage. Of course, simple logic says that this will lower cpu temps and power usage, so this step is entirely optional. If you don't care to know by how much you've reduced power consumption and temps, just skip to step three.

aptitude install powertop

powertop

The important part is the estimated time left and watts used. If you don't see it, unplug your laptop and let it run on batteries for a few minutes. Now we open up a new file on our desktop, let's call it 'pre_changes'.In a terminal run powertop. It also helps to have everything else closed except your open text document and the terminal running powertop. After letting it run for about ten or twenty seconds, cut and paste the output to the pre_changes file.

Next we gather some information about our current cpu temperature. Mine has been running for about an hour doing things like word processing and browsing the web. If you shut everything down in the last step then all you've got running right now is your normal setup, a terminal and a text editor. So walk away for five minutes, then run check your temperature in this way:

cat /proc/acpi/thermal_zone/TZ0/temperature

Take a look to see how many thermal zones there are and get a reading on each by repeating the above command for each zone. For example, on my system under /proc/acpi/thermal_zone there are five zones, TZ0, TZ1, TZ2, TZ3, TZ4. I get a reading for each and paste it into my document. If you do an 'ls' in the '/proc/acpi/thermal_zone'
directory, you'll see how many thermal zones there are to check.

Last, let's get a reading of our current VID at the highest setting. For
this we will need to use the read_msr tool from step 1. First, change your cpu governor to performance, then take a reading with read_msr.

echo performance | tee /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor

echo performance | tee /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor

Note that you should do the above command for each of your cpu's. As I have two, I have done it once for each. Check that it worked:

cpufreq-info | grep current

Read current VID values and copy-paste them to your document.

./read_msr.py

Step 3 – Get the Necessary Stuff

You need this stuff to build your kernel or module. You can copy and paste the whole list in and if you've already got something installed aptitude will just skip it and move on to the next item in the list.

aptitude install kernel-package libncurses5-dev fakeroot wget bzip2 build-essential udev linux-source zlib1g-dev

The second last item in that list, 'linux-source' puts a tar.gz archive in /usr/src, which we will need to extract:

cd /usr/src

tar xjf linux-source-2.6.26.tar.bz2 && ln -s linux-2.6.21.3 linux

cd /usr/src/linux

If you get an error at the tar command, check to make sure you've got the name right. Running 'ls' in your '/usr/src' directory will show you the correct name of the downloaded source package. If you don't see a tar.gz file then something went wrong with the download and install step above. Try re-running it and watch for any errors. The last item in the list 'zlib1g-dev' is there because my first attempt to compile failed with the following errors:

/usr/bin/make
EXTRAVERSION=-hp530 ARCH=i386 \
lguest.c:34:18: error: zlib.h:
No such file or directory
make[1]: *** [lguest] Error 1
make[1]:
Leaving directory
`/usr/src/linux-source-2.6.26/Documentation/lguest'
make: ***
[debian/stamp/build/kernel] Error 2



Installing the zlib1g-dev package resolves this failure to build. Now we need to get the files to control the undervolting. For Debian Lenny you grab the 0.3.2 version.

The latest PHC Patches

Find the downloaded archive and extract its contents, which should spit out a file called: 'linux-phc-0.3.2-kernel-vanilla-2.6.26.patch'. In your terminal, once you have cd'd to where the extracted *.patch file is do this:

cp linux-phc-0.3.2-kernel-vanilla-2.6.26.patch /usr/src/linux

Again, pay attention to the name of the patch file you extracted and change it if necessary. In a terminal cd to the '/usr/src/linux' directory and test apply the patch to make sure there are no errors.

patch -p1 --dry-run < linux-phc-0.3.2-kernel-vanilla-2.6.26.patch

If it finishes without errors, go ahead an apply the patch.

patch -p1 < linux-phc-0.3.2-kernel-vanilla-2.6.26.patch

Step 4 – Configure & Compile Your Kernel

A note here: You need to do either step four or step five, but not both. Step five is quicker and easier and safer. But my thinking is that since you care enough to undervolt your cpu, chances are you may as well tweak some settings while you're here. I've got some notes here as to what I disabled without problems, but you should probably ignore them unless you have the exact same HP 530 as me. Google is your best friend in this case, or #debian on irc, or the Debian Forums.

cd /usr/src/linux && make clean && make mrproper

cp /boot/config-`uname -r` ./.config && make menuconfig

On the first screen that pops up choose “Load an alternate config fileâ€
Last edited by oompa on 2008-11-23 12:34, edited 3 times in total.

oOarthurOo
Posts: 544
Joined: 2008-10-25 12:00
Location: Canada

#3 Post by oOarthurOo »

Thanks to oompa for his easier to access and read post. Unfortunately, a number of changes / updates have been made since version 1.0, upon which his post is based. As I can only take responsibility for my own posts / content I ask that you use either the odt or pdf version of the how-to, which is not to say that oopma's post won't work for you, merely that it is not mine and not tested by me.

oompa
Posts: 25
Joined: 2008-11-14 15:39

#4 Post by oompa »

Note: Here comes the updated automatically converted to bbcode from version 1.2
This time, I had access to a graphical interface, so I used openoffice 2.4 instead of unoconv to convert from odt to html and it produced a different output (all style was in css form) which the html to bbcode tool didn't like, so all style has been lost in translation, sorry about that.
--oompa
How To Undervolt on Debian Lenny

Introduction

This guide is based on notes that I took while trying to figure out how to undervolt my cpu. I can't guarantee that it will work for you. I should also warn you that you'll be doing things to your computer that could render it unstable, lead to data loss and / or require a complete reinstall. Proceed with caution. 

In this guide I use aptitude, but if you use apt just substitute the appropriate command. Text that is set-off in blue indicates a terminal command to be run as a regular user. Similar text in red means run it as root.  

This guide is licensed under the GNU Free Document License.Further reading

Here is a list of online resources that were consulted during the preparation of this guide. If you glance at them then you will know as much as me about the subject: 

How To Compile A Kernel on Debian Etch. (2007)

Linux PHC Installation Guide. (2008)

Ares Drake's How-To Undervolt. (2008)Changes & Acknowledgements

Big thanks to The Fallen, for assistance on the PHC forums and for his comments on this document. I think he might also be a developer for the project, so thanks to him for the patch as well. Step five in this document is pretty much a copy of the PHC installation guide. I've included it here for those who don't wish to recompile their kernel, but I've not tested it myself. Thanks also to some fine folks at #debian on IRC, who helped me with some compiling problems.

Version 1.2
        Fixed a command during build after testing with latest Lenny kernel. Added final commands after
        successfully completing install and configuration.

Version 1.1
        Included change-log in text; Incorporated comments from The Fallen regarding cpu compatibility and
        writing to PHC control file. Fixed small typos.

Version 1.0
        Document Published.Step 1 – Is your cpu compatible?

There are three ways to check this, the first being to simply google around and see if it's compatible with the PHC patch. The PHC website currently reports that: 

we support all Intel Mobile CPUs (Centrino based), Intel Core CPUs, Intel Atom CPUs and maybe more if they are similar to those ones. They have to work well with acpi-cpufreq (some older Notebooks do not work well with it) Some people reported unusual values with the new Intel Core CPUs (T8xxx / T9xxx) but generally it works there, too. In the near future we will support AMD CPUs. 

Even if you are sure that your processor is supported you should check it using the second way; the read_msr tool, as it will later allow us to confirm that the undervolting is working as expected. First, Download the read_msr tool from the PHC website, extract it, then in a terminal cd to the extracted read_msr.py tool, and do the following:

modprobe msr 

chmod 777 read_msr.py 

./read_msr.py 

You should see something like this: 

MSRTOOL V0.1 started...
Displaying data for cpu cpu0
/---------------------------------------
| Current VID: 19
| Current FID: 6
| Target VID:  19
| Target FID:  6
| Highest VID: 44
| Highest FID: 12
| Lowest VID:  19
| Lowest FID:  6
\---------------------------------------

It doesn't really matter what the numbers are, as long as you get some similar output. If you have two cores you should see one of those for each. The third way to test it is to run this in a terminal: 

lsmod | grep acpi_cpufreq 

You should see something like this: 

acpi_cpufreq        6796        1
freq_table        4224        3 acpi_cpufreq,cpufreq_ondemand,cpufreq_stats
processor        32576        4 acpi_cpufreq,thermal

If your cpu isn't listed above, and neither method two or three work, it is still possible you might be able to undervolt, but you'll have to check with the phc website,and it is unlikely you will find this document to be of much assistance.Step 2 – Get a Baseline

Since we are making these changes to obtain certain objectives (lower power, longer battery life, cooler temperatures), it makes sense to take an initial measurement of these things. Let us take an initial measurement of our cpu temperatures and some other information about our power-usage. Of course, simple logic says that this will lower cpu temps and power usage, so this step is entirely optional. If you don't care to know by how much you've reduced power consumption and temps, just skip to step three. 

aptitude install powertop 

powertop 

The important part is the estimated time left and watts used. If you don't see it, unplug your laptop and let it run on batteries for a few minutes. Now we open up a new file on our desktop, let's call it 'pre_changes'.In a terminal run powertop. It also helps to have everything else closed except your open text document and the terminal running powertop. After letting it run for about ten or twenty seconds, cut and paste the output to the pre_changes file. 

Next we gather some information about our current cpu temperature. Mine has been running for about an hour doing things like word processing and browsing the web. If you shut everything down in the last step then all you've got running right now is your normal setup, a terminal and a text editor. So walk away for five minutes, then run check your temperature in this way: 

cat /proc/acpi/thermal_zone/TZ0/temperature 

Take a look to see how many thermal zones there are and get a reading on each by repeating the above command for each zone. For example, on my system under /proc/acpi/thermal_zone there are five zones, TZ0, TZ1, TZ2, TZ3, TZ4. I get a reading for each and paste it into my document. If you do an 'ls' in the '/proc/acpi/thermal_zone' directory, you'll see how many thermal zones there are to check. 

Last, let's get a reading of our current VID at the highest setting. For this we will need to use the read_msr tool from step 1. First, change your cpu governor to performance, then take a reading with read_msr. 

echo performance | tee /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor 

echo performance | tee /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor 

Note that you should do the above command for each of your cpu's. As I have two, I have done it once for each. Check that it worked: 

cpufreq-info | grep current  

Read current VID values and copy-paste them to your document. 

./read_msr.py Step 3 – Get the Necessary Stuff

You need this stuff to build your kernel or module. You can copy and paste the whole list in and if you've already got something installed aptitude will just skip it and move on to the next item in the list. 

aptitude install kernel-package libncurses5-dev fakeroot wget bzip2 build-essential udev linux-source zlib1g-dev 

The second last item in that list, 'linux-source' puts a tar.gz archive in /usr/src, which we will need to extract: 

cd /usr/src 

tar xjf linux-source-2.6.26.tar.bz2 && ln -s linux-source-2.6.26 linux 

If you get an error at the tar command, check to make sure you've got the name right. Running 'ls' in your '/usr/src' directory will show you the correct name of the downloaded source package. If you don't see a tar.gz file then something went wrong with the download and install step above. Try re-running it and watch for any errors. The last item in the list 'zlib1g-dev' is there because my first attempt to compile failed with the following errors: 

/usr/bin/make  EXTRAVERSION=-hp530  ARCH=i386 \
lguest.c:34:18: error: zlib.h: No such file or directory
make[1]: *** [lguest] Error 1
make[1]: Leaving directory `/usr/src/linux-source-2.6.26/Documentation/lguest'
make: *** [debian/stamp/build/kernel] Error 2

Installing the zlib1g-dev package resolves this failure to build. Now we need to get the files to control the undervolting. For Debian Lenny you grab the 0.3.2 version. 

The latest PHC Patches

Find the downloaded archive and extract its contents, which should spit out a file called: 'linux-phc-0.3.2-kernel-vanilla-2.6.26.patch'. In your terminal, once you have cd'd to where the extracted *.patch file is do this: 

cp linux-phc-0.3.2-kernel-vanilla-2.6.26.patch /usr/src/linux 

Again, pay attention to the name of the patch file you extracted and change it if necessary. In a terminal cd to the '/usr/src/linux' directory and test apply the patch to make sure there are no errors. 

patch -p1 --dry-run < linux-phc-0.3.2-kernel-vanilla-2.6.26.patch 

If it finishes without errors, go ahead an apply the patch. 

patch -p1 < linux-phc-0.3.2-kernel-vanilla-2.6.26.patch Step 4 – Configure & Compile Your Kernel

A note here: You need to do either step four or step five, but not both. Step five is quicker and easier and safer. But my thinking is that since you care enough to undervolt your cpu, chances are you may as well tweak some settings while you're here. I've got some notes here as to what I disabled without problems, but you should probably ignore them unless you have the exact same HP 530 as me. Google is your best friend in this case, or #debian on irc, or the Debian Forums.

cd /usr/src/linux && make clean && make mrproper 

cp /boot/config-`uname -r` ./.config && make menuconfig 

On the first screen that pops up choose “Load an alternate config fileâ€

andmalc
Posts: 10
Joined: 2008-01-24 19:43

Re: How To Undervolt on Debian Lenny

#5 Post by andmalc »

I think I understand the purpose of the above is to manually set the voltage of your CPU.

Perhaps you could point out that for automatic power management on a newer CPU, all that's needed is to make sure the acpi-cpufreq and cpufreq_ondemand modules are loaded on boot and then write 'devices/system/cpu/cpu0/cpufreq/scaling_governor = ondemand' to /etc/sysfs.conf. This conserves power when the computer is idle but makes processing power available again when needed.

CPU's older than maybe 3 or 4 years won't support this.

hyfans
Posts: 21
Joined: 2007-04-01 15:44

Re: How To Undervolt on Debian Lenny

#6 Post by hyfans »

andmalc wrote:I think I understand the purpose of the above is to manually set the voltage of your CPU.

Perhaps you could point out that for automatic power management on a newer CPU, all that's needed is to make sure the acpi-cpufreq and cpufreq_ondemand modules are loaded on boot and then write 'devices/system/cpu/cpu0/cpufreq/scaling_governor = ondemand' to /etc/sysfs.conf. This conserves power when the computer is idle but makes processing power available again when needed.

CPU's older than maybe 3 or 4 years won't support this.
i don't agree with you, this phc looks like is another layer control on top of cpu on demand scaling.

andmalc
Posts: 10
Joined: 2008-01-24 19:43

Re: How To Undervolt on Debian Lenny

#7 Post by andmalc »

hyfans wrote:
andmalc wrote:I think I understand the purpose of the above is to manually set the voltage of your CPU.

Perhaps you could point out that for automatic power management on a newer CPU, all that's needed is to make sure the acpi-cpufreq and cpufreq_ondemand modules are loaded on boot and then write 'devices/system/cpu/cpu0/cpufreq/scaling_governor = ondemand' to /etc/sysfs.conf. This conserves power when the computer is idle but makes processing power available again when needed.

CPU's older than maybe 3 or 4 years won't support this.
i don't agree with you, this phc looks like is another layer control on top of cpu on demand scaling.
From the home page of the Linux-PHC project:
Linux-PHC is a project to enable Linux users to undervolt their CPUs.
Just like NHC or Rightmark RMClock for Windows users can lower the voltages of their CPUs to expand battery time and reduce the CPUs temperature.

This is possible because we utilize the production tolerance of a CPU.
CPUs have different production qualities so the vendor defines voltages every CPU -even those with low quality- will work with.
If your CPU is of higher quality you can easily run it with lower voltages without getting unstable.
The Introduction at https://wiki.ubuntu.com/UndervoltingHowto says about the same thing.

This really appears to be setting value of the CPU voltage like we used to do by changing jumpers on a motherboard. I do see that this project uses cpufreq but overrides any automatic management. I'm not saying this is a bad thing, but I think most people will want automatic power management and the post should state upfront that this feature is not for general power savings but only for those that need to set a specific level.

oOarthurOo
Posts: 544
Joined: 2008-10-25 12:00
Location: Canada

Re: How To Undervolt on Debian Lenny

#8 Post by oOarthurOo »

I'm just following my own guide right now to undervolt my CPU, so I thought I'd throw in a few updates/clarifications.
Perhaps you could point out that for automatic power management on a newer CPU, all that's needed is to make sure the acpi-cpufreq and cpufreq_ondemand modules are loaded on boot and then write 'devices/system/cpu/cpu0/cpufreq/scaling_governor = ondemand' to /etc/sysfs.conf. This conserves power when the computer is idle but makes processing power available again when needed. CPU's older than maybe 3 or 4 years won't support this.
This doesn't change that. Undervolting reduces the amount of voltage that is supplied to the CPU. Just for example, these numbers aren't correct but you'll get the idea, by default when my cpu ramps up to 1600Mhz it consumes .26 volts, and when it drops to 800 Mhz it consumes .09 volts. Frequency scaling controls when and how much it switches from minimum state (800 Mhz) to maximum state (1600mhz), and that is all it can do. With the PHC patch we get to control not only when and how it scales, but also how much power it requests from the system. Thus, when my patched acpi_cpufreq ramps up to 1600Mhz, I tell it to only use .09volts. It uses .09 volts no matter what speed the clock is running at.

Why do this? Well, less volts running to the cpu means less heat, which means the fan kicks in less often. It also means longer battery life, though by how much I have no idea as I've never benchmarked that kind of thing.

The downside is that if you give the CPU too little voltage it will start to complain, throwing errors, causing lockups, etc. What voltage you can get away with depends on your cpu and your usage. The PHC forums are a good place to look for guidance on this issue.
The Introduction at https://wiki.ubuntu.com/UndervoltingHowto says about the same thing. This really appears to be setting value of the CPU voltage like we used to do by changing jumpers on a motherboard. I do see that this project uses cpufreq but overrides any automatic management. I'm not saying this is a bad thing, but I think most people will want automatic power management and the post should state upfront that this feature is not for general power savings but only for those that need to set a specific level.
I've sent corrections to the author of that post but he hasn't acknowledged them. For instance, he still incorrectly states that the voltages do not need to be applied to each core individually. In fact it depends on your CPU. My intel duo-core happens to require both cores to be set, otherwise it will default to the larger of the two settings.

The patch doesn't over-ride any automatic settings. If you patch your kernel source, reboot, nothing will be different at all. The only way to modify the settings (the jumpers if you will), is to echo new settings via the acpi_cpufreq module. Furthermore, some CPUs, such as mine, have absolute minimiums that you can't over-ride with this patch. I can echo 0.06 to my cpu's all day and night, but they will never draw less than 0.09.
this phc looks like is another layer control on top of cpu on demand scaling.
It's not. It simply exposes another switch, if you will, available from the acpi_cpufreq module. It's not the acpi_cpufreq module and the undervolting module, it's a recoded acpi_cpufreq module that also allows you to control how much voltage is used by the cpu, in addition to telling it when to switch states from minimum to maximum clock speeds.

Hope this helps clarify things. Once I get my new settings in place I'll post on update on whether there are any changes from those listed in the instructions above.

User avatar
stevepusser
Posts: 12930
Joined: 2009-10-06 05:53
Has thanked: 41 times
Been thanked: 71 times

Re: How To Undervolt on Debian Lenny

#9 Post by stevepusser »

Thanks for the guide, I will put it on my to-do list. I noticed that the original post asked for a better place to store the files--I have been happy with Google Docs (share the files with everyone), or else a free website at sites.google.com. Either one just needs a gmail account.
MX Linux packager and developer

oOarthurOo
Posts: 544
Joined: 2008-10-25 12:00
Location: Canada

Re: How To Undervolt on Debian Lenny

#10 Post by oOarthurOo »

Thanks for the tip about google docs. I'll look at that for the next version, which I'm currently working on. There's almost no point in following this guide anymore, as the phc folks have released a new build that is built out of tree. I'm currently enjoying some undervolted goodness using their new setup, but I have a feeling that I haven't done it in a very debianized way.

Coles notes until a more proper update can be done:

Download the .tar.gz from the phc-linux website for your kernel (there are two available, one for 2.6.32 and below, the other for 2.6.33+). Avoid the experimental release. It shouldn't be placed so prominently on their site IMHO.

Extract and build as per their advice in the installation readme doc within the tar.gz file.

locate the current acpi_cpufreq.ko file for your current kernel, and rename it to something like disabled_acpi_cpufreq.ko, then move the created intel_phc.ko file to the acpi_cpufreq location, and rename it to acpi_cpufreq.ko (it will still show up as intel_phc when running lsmod)

Echo new values to /sys/devices/system/cpu/cpu#/cpufreq/phc_vids

As I said, proper instructions to follow in the not too distant future.

oOarthurOo
Posts: 544
Joined: 2008-10-25 12:00
Location: Canada

Re: How To Undervolt on Debian Squeeze

#11 Post by oOarthurOo »

Ok, I've updated and tested things out. Any problems let me know. First post has been updated.

rhy7s
Posts: 104
Joined: 2010-02-28 23:43

Re: How To Undervolt on Debian Squeeze

#12 Post by rhy7s »

I am running Testing on an IBM X41 with the liquorix kernel. I don't have phc* entries in /sys/devices/system/cpu/cpu0/cpufreq/ - do I have to create them? And also, is the script at http://www.s3pp.de/misc/linux-phc-optimize.bash still applicable?

oOarthurOo
Posts: 544
Joined: 2008-10-25 12:00
Location: Canada

Re: How To Undervolt on Debian Squeeze

#13 Post by oOarthurOo »

rhy7s wrote:I am running Testing on an IBM X41 with the liquorix kernel. I don't have phc* entries in /sys/devices/system/cpu/cpu0/cpufreq/ - do I have to create them? And also, is the script at http://www.s3pp.de/misc/linux-phc-optimize.bash still applicable?
No, you shouldn't have to create them. What cpu do you have? It's possible linux-phc doesn't support your cpu in which case you wouldn't see the entries. And your link is broken for me.

Post Reply