Smartreflex

(Alternative Terminal Method)
(GUI)
Line 55: Line 55:
[[http://maemo.org/downloads/product/Maemo5/qcpufreq/ QCPUFreq]] application has an option to enable Smartreflex via GUI.
[[http://maemo.org/downloads/product/Maemo5/qcpufreq/ QCPUFreq]] application has an option to enable Smartreflex via GUI.
-
However it currently only changes VDD1 values.
+
However it currently only changes both VDD1 and VDD2 values together.

Revision as of 12:23, 2 June 2012

Contents

The official explanation

"SmartReflex is an advanced, multi-level and multi-parameter power management approach that can be found at some TI DSPs of the OMAP35x series."[1]

TL;DR. SmartReflex is a nifty way of scaling the voltage of the processor in a way similar to frequency scaling. That is, voltage is increased as it is required. Conversely it is decreased as it is not required. Most users report that this has lead to an increase of around 1/3 battery life. (DISCLAIMER:1/3 battery life is dependent on a particular users set up and style of use.)

This module adjusts OMAP3 VDD1 and VDD2 operating voltages around the nominal values of current operating point depending on silicon characteristics and operating conditions.

SR on the Stock Nokia kernel

Smartreflex has been considered broken for a long time. Using the stock Nokia kernel it can only be activated up to 805MHz at most. The Stock Nokia kernel implementation of SmartReflex is to be considered broken and its use is to be avoided.


Due to it's instability and multiple bug reports:-

"Nokia decided that SR will be kept disabled. In the next public update (PR 1.3) it will be made possible for advanced users to enable it if wanted."

Kernel Power

Since Kernel Power 50 (KP50), despite some disagreements amongst some of the more senior Maemo developers, SmartReflex can now be considered stable up 900MHz.

  • I know I just said SR is stable up to 900MHz however some users have reported that on their devices SR is only stable up to lower frequencies (720-805MHz for example). For more examples on tuning SR see the KP50 article.

Enabling Smartreflex

Temporarily from terminal

echo 1 > /sys/power/sr_vdd1_autocomp
echo 1 > /sys/power/sr_vdd2_autocomp


This will not take effect AFTER a reboot. It is recommended you test with this method first to determine if SR will work for your setup.

Terminal

Assuming you are using Kernel Power the instruction for use are:-

[Use of Kernel Power Configuration]


Alternative Terminal Method

This alternative method can be used even if Stock Kernel is used.

sudo leafpad /etc/pmconfig

Use leafpad text editor to change, sr_vdd_autocomp to:-

sr_vdd1_autocomp 1
sr_vdd2_autocomp 1 

Warning! If you set overclock voltages above that which smartreflex is stable AND you enable SR from /etc/pmconfig you WILL get a re-boot loop. You will need to re-flash to fix.

GUI

[QCPUFreq] application has an option to enable Smartreflex via GUI. However it currently only changes both VDD1 and VDD2 values together.