xref: /openbmc/linux/arch/arm/mach-omap2/clock2xxx.h (revision 5f039377)
1d8a94458SPaul Walmsley /*
2d8a94458SPaul Walmsley  * OMAP2 clock function prototypes and macros
3d8a94458SPaul Walmsley  *
481b34fbeSPaul Walmsley  * Copyright (C) 2005-2010 Texas Instruments, Inc.
581b34fbeSPaul Walmsley  * Copyright (C) 2004-2010 Nokia Corporation
6d8a94458SPaul Walmsley  */
7d8a94458SPaul Walmsley 
881b34fbeSPaul Walmsley #ifndef __ARCH_ARM_MACH_OMAP2_CLOCK2XXX_H
981b34fbeSPaul Walmsley #define __ARCH_ARM_MACH_OMAP2_CLOCK2XXX_H
10d8a94458SPaul Walmsley 
11d8a94458SPaul Walmsley unsigned long omap2_table_mpu_recalc(struct clk *clk);
12d8a94458SPaul Walmsley int omap2_select_table_rate(struct clk *clk, unsigned long rate);
13d8a94458SPaul Walmsley long omap2_round_to_table_rate(struct clk *clk, unsigned long rate);
1444da0a51SPaul Walmsley unsigned long omap2xxx_sys_clk_recalc(struct clk *clk);
15d8a94458SPaul Walmsley unsigned long omap2_osc_clk_recalc(struct clk *clk);
16d8a94458SPaul Walmsley unsigned long omap2_dpllcore_recalc(struct clk *clk);
17d8a94458SPaul Walmsley int omap2_reprogram_dpllcore(struct clk *clk, unsigned long rate);
185f039377SPaul Walmsley unsigned long omap2xxx_clk_get_core_rate(void);
1949214640SPaul Walmsley u32 omap2xxx_get_apll_clkin(void);
2087a1b26cSPaul Walmsley u32 omap2xxx_get_sysclkdiv(void);
21feec1277SPaul Walmsley void omap2xxx_clk_prepare_for_reboot(void);
225f039377SPaul Walmsley void omap2xxx_clkt_dpllcore_init(struct clk *clk);
23d8a94458SPaul Walmsley 
2459b479e0STony Lindgren #ifdef CONFIG_SOC_OMAP2420
2581b34fbeSPaul Walmsley int omap2420_clk_init(void);
26d8a94458SPaul Walmsley #else
27b481cea3SFelipe Balbi #define omap2420_clk_init()	do { } while(0)
28d8a94458SPaul Walmsley #endif
29d8a94458SPaul Walmsley 
3059b479e0STony Lindgren #ifdef CONFIG_SOC_OMAP2430
3181b34fbeSPaul Walmsley int omap2430_clk_init(void);
3281b34fbeSPaul Walmsley #else
33b481cea3SFelipe Balbi #define omap2430_clk_init()	do { } while(0)
3481b34fbeSPaul Walmsley #endif
3581b34fbeSPaul Walmsley 
3681b34fbeSPaul Walmsley extern void __iomem *prcm_clksrc_ctrl, *cm_idlest_pll;
37d8a94458SPaul Walmsley 
38d8a94458SPaul Walmsley extern const struct clkops clkops_omap2430_i2chs_wait;
39d8a94458SPaul Walmsley extern const struct clkops clkops_oscck;
40d8a94458SPaul Walmsley extern const struct clkops clkops_apll96;
41d8a94458SPaul Walmsley extern const struct clkops clkops_apll54;
42d8a94458SPaul Walmsley 
43d8a94458SPaul Walmsley #endif
44