arm:am33xx: Add a scale_vcores() hook
authorTom Rini <trini@ti.com>
Thu, 5 Jun 2014 15:15:28 +0000 (11:15 -0400)
committerTom Rini <trini@ti.com>
Fri, 6 Jun 2014 21:46:16 +0000 (17:46 -0400)
Similar to OMAP4/5 we need to scale the voltage up prior to changing the
clock frequencies up higher.  Add a similar hook to start with.

Signed-off-by: Tom Rini <trini@ti.com>
arch/arm/cpu/armv7/am33xx/clock.c
arch/arm/include/asm/arch-am33xx/clock.h

index 0672798fe0415afbcd66286dde5031f255a30eda..ec7d46838b74770b1a284cd4a2a72085506a5725 100644 (file)
@@ -170,8 +170,19 @@ void do_enable_clocks(u32 *const *clk_domains,
        };
 }
 
+/*
+ * Before scaling up the clocks we need to have the PMIC scale up the
+ * voltages first.  This will be dependent on which PMIC is in use
+ * and in some cases we may not be scaling things up at all and thus not
+ * need to do anything here.
+ */
+__weak void scale_vcores(void)
+{
+}
+
 void prcm_init()
 {
        enable_basic_clocks();
+       scale_vcores();
        setup_dplls();
 }
index f00fad38fe4b5072d01a5535531df02aa3b6cf8b..4af6b57e42f5528c7ed2e78796b654a94f179ec1 100644 (file)
@@ -107,6 +107,7 @@ const struct dpll_params *get_dpll_mpu_params(void);
 const struct dpll_params *get_dpll_core_params(void);
 const struct dpll_params *get_dpll_per_params(void);
 const struct dpll_params *get_dpll_ddr_params(void);
+void scale_vcores(void);
 void do_setup_dpll(const struct dpll_regs *, const struct dpll_params *);
 void prcm_init(void);
 void enable_basic_clocks(void);