aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/clk
diff options
context:
space:
mode:
authorTero Kristo <t-kristo@ti.com>2013-06-18 11:55:59 -0400
committerMike Turquette <mturquette@linaro.org>2014-01-17 15:35:10 -0500
commitf60b1ea5ea7ab1aee34a5ba55520b84b6e6d482e (patch)
treef7afada378e4ebac7fb02cd05adb653b4fec760d /include/linux/clk
parent1f847c65fd569c1d822800ba3e7e18c6411a7d50 (diff)
CLK: TI: add support for gate clock
This patch adds support for TI specific gate clocks. These behave as basic gate-clock, but have different ops / hw-ops for controlling the actual gate, for example waiting until the clock is ready. Several sub-types are supported: - ti,gate-clock: basic gate clock with default ops/hwops - ti,clkdm-gate-clock: clockdomain level gate control - ti,dss-gate-clock: gate clock with DSS specific hardware handling - ti,am35xx-gate-clock: gate clock with AM35xx specific hardware handling - ti,hsdiv-gate-clock: gate clock with OMAP36xx hardware errata handling Signed-off-by: Tero Kristo <t-kristo@ti.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Mike Turquette <mturquette@linaro.org>
Diffstat (limited to 'include/linux/clk')
-rw-r--r--include/linux/clk/ti.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/linux/clk/ti.h b/include/linux/clk/ti.h
index 17fb49e4ff5e..d94feb3b5519 100644
--- a/include/linux/clk/ti.h
+++ b/include/linux/clk/ti.h
@@ -244,6 +244,8 @@ long omap2_dpll_round_rate(struct clk_hw *hw, unsigned long target_rate,
244void omap2_init_clk_clkdm(struct clk_hw *clk); 244void omap2_init_clk_clkdm(struct clk_hw *clk);
245unsigned long omap3_clkoutx2_recalc(struct clk_hw *hw, 245unsigned long omap3_clkoutx2_recalc(struct clk_hw *hw,
246 unsigned long parent_rate); 246 unsigned long parent_rate);
247int omap2_clkops_enable_clkdm(struct clk_hw *hw);
248void omap2_clkops_disable_clkdm(struct clk_hw *hw);
247int omap3_dpll4_set_rate(struct clk_hw *clk, unsigned long rate, 249int omap3_dpll4_set_rate(struct clk_hw *clk, unsigned long rate,
248 unsigned long parent_rate); 250 unsigned long parent_rate);
249int omap2_dflt_clk_enable(struct clk_hw *hw); 251int omap2_dflt_clk_enable(struct clk_hw *hw);
@@ -268,5 +270,9 @@ static inline void of_ti_clk_deny_autoidle_all(void) { }
268 270
269extern const struct clk_hw_omap_ops clkhwops_omap3_dpll; 271extern const struct clk_hw_omap_ops clkhwops_omap3_dpll;
270extern const struct clk_hw_omap_ops clkhwops_omap4_dpllmx; 272extern const struct clk_hw_omap_ops clkhwops_omap4_dpllmx;
273extern const struct clk_hw_omap_ops clkhwops_wait;
274extern const struct clk_hw_omap_ops clkhwops_omap3430es2_dss_usbhost_wait;
275extern const struct clk_hw_omap_ops clkhwops_am35xx_ipss_module_wait;
276extern const struct clk_hw_omap_ops clkhwops_iclk_wait;
271 277
272#endif 278#endif