OMAP3: PM: SmartReflex driver integration
commit5cbe77ffe9185e335c1927880279b36e48e09d23
authorKalle Jokiniemi <ext-kalle.jokiniemi@nokia.com>
Tue, 3 Feb 2009 19:48:56 +0000 (3 11:48 -0800)
committerKevin Hilman <khilman@deeprootsystems.com>
Fri, 23 Oct 2009 18:20:19 +0000 (23 11:20 -0700)
treedbd0ef841729b0fa96743dd0b50f58a584df7605
parentbb247effa1c99ba1a759a7056d1722a7b30a0b1b
OMAP3: PM: SmartReflex driver integration

Originally from linux-omap tree, and original commit message follows.
This also includes various updates, cleanups and fixes by the folks
CC'd below.

From : Kalle Jokiniemi <ext-kalle.jokiniemi@nokia.com>

This patch integrates TI's SmartReflex driver into
linux-omap. SmartReflex is a module that adjusts OMAP3 VDD1 and VDD2
operating voltages around the nominal values of current operating
point depending on silicon characteristics and operating conditions.

The patch adds Kconfig options "SmartReflex support" and a sub-option
"SmartReflex testing support" under "System type"->"TI OMAP
implementations" menu. The testing support can be used to test
SmartReflex functionality, if the E-fuse values have not been set for
the device. It however uses software hard coded sensor parameters,
which may not work on all devices. Beware.

The driver creates two sysfs entries into /sys/power/ named
"sr_vdd1_autocomp" and "sr_vdd2_autocomp" which can be used to
activate voltage autocompensation feature of SmartReflex modules 1 and
2.

Use the following commands to enable autocompensation:

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

To disable:

echo -n 0 > /sys/power/sr_vdd1_autocomp
echo -n 0 > /sys/power/sr_vdd2_autocomp

Signed-off-by: Kalle Jokiniemi <ext-kalle.jokiniemi@nokia.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Cc: Paul Walmsley <paul@pwsan.com>
Cc: Peter 'p2' De Schrijver <peter.de-schrijver@nokia.com>
Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
arch/arm/mach-omap2/Makefile
arch/arm/mach-omap2/pm34xx.c
arch/arm/mach-omap2/prm-regbits-34xx.h
arch/arm/mach-omap2/smartreflex.c [new file with mode: 0644]
arch/arm/mach-omap2/smartreflex.h [new file with mode: 0644]
arch/arm/plat-omap/Kconfig
arch/arm/plat-omap/include/plat/control.h
arch/arm/plat-omap/include/plat/omap34xx.h