Current implementation expects AVS to be available
on the processor - by default. May not be true.

This patch allows the vp_init() to be implemented
per processor (or family) - same as vc_init().

Signed-off-by: Sanjeev Premi <pr...@ti.com>
---
 arch/arm/mach-omap2/voltage.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/arch/arm/mach-omap2/voltage.c b/arch/arm/mach-omap2/voltage.c
index 12be525..bbc36e7 100644
--- a/arch/arm/mach-omap2/voltage.c
+++ b/arch/arm/mach-omap2/voltage.c
@@ -312,6 +312,8 @@ static struct dentry *voltage_dir;
 
 /* Init function pointers */
 static void (*vc_init) (struct omap_vdd_info *vdd);
+static void (*vp_init) (struct omap_vdd_info *vdd);
+
 static int (*vdd_data_configure) (struct omap_vdd_info *vdd);
 
 static u32 omap3_voltage_read_reg(u16 mod, u8 offset)
@@ -416,7 +418,7 @@ static void vp_latch_vsel(struct omap_vdd_info *vdd)
 }
 
 /* Generic voltage init functions */
-static void __init vp_init(struct omap_vdd_info *vdd)
+static void __init omap_vp_init(struct omap_vdd_info *vdd)
 {
        u32 vp_val;
        u16 mod;
@@ -1557,11 +1559,13 @@ static int __init omap_voltage_early_init(void)
                vdd_info = omap3_vdd_info;
                nr_scalable_vdd = OMAP3_NR_SCALABLE_VDD;
                vc_init = omap3_vc_init;
+               vp_init = omap_vp_init;
                vdd_data_configure = omap3_vdd_data_configure;
        } else if (cpu_is_omap44xx()) {
                vdd_info = omap4_vdd_info;
                nr_scalable_vdd = OMAP4_NR_SCALABLE_VDD;
                vc_init = omap4_vc_init;
+               vp_init = omap_vp_init;
                vdd_data_configure = omap4_vdd_data_configure;
        } else {
                pr_warning("%s: voltage driver support not added\n", __func__);
-- 
1.7.2.2

--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to