aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/power
diff options
context:
space:
mode:
authorJean Pihet <j-pihet@ti.com>2012-04-25 11:19:44 +0530
committerKevin Hilman <khilman@ti.com>2012-05-31 16:03:44 -0700
commit5e7f2e12e4ea14a34fb9b5941d60a4464fc8d40a (patch)
tree0ff1412b37d31fa0c601de90759928b9dbcd7960 /include/linux/power
parentARM: OMAP2+: Voltage: Move the omap_volt_data structure to plat (diff)
downloadlinux-dev-5e7f2e12e4ea14a34fb9b5941d60a4464fc8d40a.tar.xz
linux-dev-5e7f2e12e4ea14a34fb9b5941d60a4464fc8d40a.zip
ARM: OMAP2+: SmartReflex: Use per-OPP data structure
The SmartReflex driver incorrectly treats some per-OPP data as data common to all OPPs (e.g., ERRMINLIMIT). Move this data into a per-OPP data structure. Furthermore, in order to make the SmartReflex implementation ready for the move to drivers/, remove the dependency from the SR driver code to the voltage layer by querying the data tables only from the SR device init code. Based on Paul's original code for the SmartReflex driver conversion. Signed-off-by: Jean Pihet <j-pihet@ti.com> Signed-off-by: J Keerthy <j-keerthy@ti.com> Reviewed-by: Kevin Hilman <khilman@ti.com> Signed-off-by: Kevin Hilman <khilman@ti.com>
Diffstat (limited to 'include/linux/power')
-rw-r--r--include/linux/power/smartreflex.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/include/linux/power/smartreflex.h b/include/linux/power/smartreflex.h
index 78b795ea2709..222f90183712 100644
--- a/include/linux/power/smartreflex.h
+++ b/include/linux/power/smartreflex.h
@@ -243,12 +243,16 @@ struct omap_sr_class_data {
/**
* struct omap_sr_nvalue_table - Smartreflex n-target value info
*
- * @efuse_offs: The offset of the efuse where n-target values are stored.
- * @nvalue: The n-target value.
+ * @efuse_offs: The offset of the efuse where n-target values are stored.
+ * @nvalue: The n-target value.
+ * @errminlimit: The value of the ERRMINLIMIT bitfield for this n-target
+ * @volt_nominal: microvolts DC that the VDD is initially programmed to
*/
struct omap_sr_nvalue_table {
u32 efuse_offs;
u32 nvalue;
+ u32 errminlimit;
+ unsigned long volt_nominal;
};
/**