|
@@ -11,10 +11,29 @@
|
|
|
#ifndef __ARCH_ARM_OMAP_VOLTAGE_H
|
|
|
#define __ARCH_ARM_OMAP_VOLTAGE_H
|
|
|
|
|
|
+/**
|
|
|
+ * struct omap_volt_data - Omap voltage specific data.
|
|
|
+ * @voltage_nominal: The possible voltage value in uV
|
|
|
+ * @sr_efuse_offs: The offset of the efuse register(from system
|
|
|
+ * control module base address) from where to read
|
|
|
+ * the n-target value for the smartreflex module.
|
|
|
+ * @sr_errminlimit: Error min limit value for smartreflex. This value
|
|
|
+ * differs at differnet opp and thus is linked
|
|
|
+ * with voltage.
|
|
|
+ * @vp_errorgain: Error gain value for the voltage processor. This
|
|
|
+ * field also differs according to the voltage/opp.
|
|
|
+ */
|
|
|
+struct omap_volt_data {
|
|
|
+ u32 volt_nominal;
|
|
|
+ u32 sr_efuse_offs;
|
|
|
+ u8 sr_errminlimit;
|
|
|
+ u8 vp_errgain;
|
|
|
+};
|
|
|
struct voltagedomain;
|
|
|
|
|
|
struct voltagedomain *voltdm_lookup(const char *name);
|
|
|
int voltdm_scale(struct voltagedomain *voltdm, unsigned long target_volt);
|
|
|
unsigned long voltdm_get_voltage(struct voltagedomain *voltdm);
|
|
|
-
|
|
|
+struct omap_volt_data *omap_voltage_get_voltdata(struct voltagedomain *voltdm,
|
|
|
+ unsigned long volt);
|
|
|
#endif
|