3 #ifndef CPU_SAMSUNG_EXYNOS5250_CLK_H
4 #define CPU_SAMSUNG_EXYNOS5250_CLK_H
8 #include <soc/pinmux.h>
52 #define MCT_HZ 24000000
510 #define EXYNOS5_EPLLCON0_LOCKED_SHIFT 29
511 #define EPLL_SRC_CLOCK 24000000
512 #define TIMEOUT_EPLL_LOCK 1000
514 #define AUDIO_0_RATIO_MASK 0x0f
515 #define AUDIO_1_RATIO_MASK 0x0f
517 #define CLK_SRC_PERIC1 0x254
518 #define AUDIO1_SEL_MASK 0xf
519 #define CLK_SRC_AUDIOCDCLK1 0x0
520 #define CLK_SRC_XXTI 0x1
521 #define CLK_SRC_SCLK_EPLL 0x7
524 #define EPLL_CON0_MDIV_MASK 0x1ff
525 #define EPLL_CON0_PDIV_MASK 0x3f
526 #define EPLL_CON0_SDIV_MASK 0x7
527 #define EPLL_CON0_LOCKED_SHIFT 29
528 #define EPLL_CON0_MDIV_SHIFT 16
529 #define EPLL_CON0_PDIV_SHIFT 8
530 #define EPLL_CON0_SDIV_SHIFT 0
531 #define EPLL_CON0_LOCK_DET_EN_SHIFT 28
532 #define EPLL_CON0_LOCK_DET_EN_MASK 1
void clock_ll_set_ratio(enum periph_id periph_id, unsigned int divisor)
Low-level function to set the clock ratio for a peripheral.
void clock_ll_set_pre_ratio(enum periph_id periph_id, unsigned int divisor)
Low-level function to set the clock pre-ratio for a peripheral.
unsigned long get_pwm_clk(void)
struct arm_clk_ratios * get_arm_clk_ratios(void)
Get the clock ratios for CPU configuration.
void clock_select_i2s_clk_source(void)
unsigned long get_arm_clk(void)
unsigned long clock_get_periph_rate(enum periph_id peripheral)
get the clk frequency of the required peripheral
unsigned long get_uart_clk(int dev_index)
int clock_set_i2s_clk_prescaler(unsigned int src_frq, unsigned int dst_frq)
int clock_set_rate(enum periph_id periph_id, unsigned int rate)
Low-level function that selects the best clock scalars for a given rate and sets up the given periphe...
unsigned long get_pll_clk(int pllreg)
static struct exynos5_mct *const exynos_mct
void set_mmc_clk(int dev_index, unsigned int div)
int clock_set_mshci(enum periph_id peripheral)
void system_clock_init(struct mem_timings *mem, struct arm_clk_ratios *arm_clk_ratio)
int clock_epll_set_rate(unsigned long rate)
static struct exynos5_clock *const exynos_clock
check_member(exynos5_clock, pll_div2_sel, 0x20a24)
#define EXYNOS5_MULTI_CORE_TIMER_BASE
#define EXYNOS5_CLOCK_BASE
unsigned int periph_ratio
unsigned int pclk_dbg_ratio
unsigned int arm_freq_mhz
unsigned int apll_con0_l5
unsigned int gate_ip_isp1
unsigned int apll_con0_l3
unsigned int div_stat_top0
unsigned char res19[0xf8]
unsigned int div_stat_disp0_1
unsigned int parityfail_status
unsigned int gate_top_sclk_gen
unsigned int clkout_cmu_cpu_div_stat
unsigned int mux_stat_cpu
unsigned char res17[0xf8]
unsigned int gate_ip_gscl
unsigned char res99[0xfc]
unsigned char res21[0x2f4]
unsigned int atclk_stopctrl
unsigned int div_stat_peric5
unsigned char res48[0x18]
unsigned int src_mask_disp0_1
unsigned int gate_top_sclk_peric
unsigned int src_mask_disp1_1
unsigned char res31b[0xc]
unsigned int div_stat_peric4
unsigned char res94[0x3af8]
unsigned int div_stat_acp
unsigned char res41a[0xc]
unsigned int apll_con1_l4
unsigned int clkout_cmu_r0x_div_stat
unsigned char res97[0x1fc]
unsigned int gate_ip_disp0
unsigned int dcgperf_map1
unsigned int div_stat_disp1_0
unsigned char res18[0x100]
unsigned int gate_ip_peric
unsigned char res83[0x7c]
unsigned int gate_ip_cdrex
unsigned int gate_ip_core
unsigned int apll_con1_l6
unsigned int div_stat_peric2
unsigned int div_stat_r0x
unsigned char res61[0x10]
unsigned char res98[0x3608]
unsigned char res69[0x10]
unsigned char res34[0x3f4]
unsigned int src_mask_gscl
unsigned int parityfail_clear
unsigned int sclk_div_isp
unsigned int clkout_cmu_cpu
unsigned int gate_ip_fsys
unsigned int div_stat_isp1
unsigned char res55[0x9c]
unsigned char res38[0x3618]
unsigned int div_stat_gscl
unsigned int mux_stat_cdrex
unsigned char res49[0x9c]
unsigned int apll_con0_l7
unsigned char res13[0xe0]
unsigned int div_stat_fsys0
unsigned int sclk_div_stat_isp
unsigned char res77[0xac]
unsigned char res20[0xf4]
unsigned int gate_sclk_cpu
unsigned char res15[0xfc]
unsigned int div_stat_isp0
unsigned int apll_con0_l4
unsigned char res14[0x2ce0]
unsigned int clkout_cmu_core_div_stat
unsigned int gate_sclk_isp
unsigned int div_stat_peric0
unsigned char res95[0xfc]
unsigned int sclk_src_isp
unsigned char res106[0x4]
unsigned char res64[0x6c]
unsigned int apll_con1_l1
unsigned int apll_con0_l6
unsigned int clkout_cmu_acp_div_stat
unsigned int clkout_cmu_r1x
unsigned int src_mask_isp
unsigned char res8[0x5f8]
unsigned char res96[0x1fc]
unsigned int clkout_cmu_core
unsigned int mux_stat_core1
unsigned char res85[0x1fc]
unsigned char res12[0xdc]
unsigned char res41b[0xcc]
unsigned char res86[0xfc]
unsigned char res56[0xf0]
unsigned char res44a[0x4]
unsigned int gate_ip_peris
unsigned int apll_con1_l3
unsigned int div_stat_peric3
unsigned int mux_stat_top2
unsigned char res31c[0xc]
unsigned char res109b[0xf5e4]
unsigned int clkout_cmu_lex_div_stat
unsigned char res92[0x1fc]
unsigned int div_stat_r1x
unsigned int apll_con0_l1
unsigned int src_mask_maudio
unsigned int dcgperf_map0
unsigned char res105[0xc]
unsigned char res7[0x1fc]
unsigned int gate_top_sclk_isp
unsigned char res30[0x1fc]
unsigned int dmc_pwr_ctrl
unsigned char res16[0xf8]
unsigned int div_stat_gen
unsigned char res29[0xfc]
unsigned char res109a[0xc]
unsigned char res11[0xd8]
unsigned char res22[0xf8]
unsigned char res101[0x1fc]
unsigned int src_mask_disp0_0
unsigned int gate_top_sclk_disp1
unsigned int gate_ip_isp0
unsigned int src_mask_peric0
unsigned char res31d[0xdc]
unsigned int div_stat_cpu0
unsigned int gate_top_sclk_mau
unsigned char res54[0x18]
unsigned int div_stat_syslft
unsigned char res31a[0xfc]
unsigned int clkout_cmu_top_div_stat
unsigned int lpddr3phy_ctrl
unsigned char res82[0x1c]
unsigned char res72[0x180]
unsigned int src_mask_core
unsigned char res3[0x1fc]
unsigned int div_stat_lex
unsigned int mcuisp_pwr_ctrl
unsigned int clkout_cmu_cdrex
unsigned int apll_con0_l8
unsigned char res37[0xec]
unsigned int gate_top_sclk_disp0
unsigned int clkout_cmu_isp_div_stat
unsigned int src_mask_disp1_0
unsigned char res44b[0xb8]
unsigned char res91[0x1fc]
unsigned char res107[0xe0]
unsigned char res100[0xe8]
unsigned int clkout_cmu_top
unsigned int src_mask_top
unsigned char res24[0x14]
unsigned int src_mask_peric1
unsigned char res84[0x37f8]
unsigned char res33[0xf4]
unsigned int mux_stat_top0
unsigned int div_stat_maudio
unsigned int apll_con1_l5
unsigned char res35[0xf8]
unsigned char res90[0xfc]
unsigned int div_stat_top1
unsigned char res23[0x5f8]
unsigned int apll_con0_l2
unsigned int clkout_cmu_lex
unsigned int div_stat_fsys3
unsigned int div_stat_isp2
unsigned char res104[0x2fc]
unsigned int lpddr3phy_con3
unsigned int div_stat_peric1
unsigned int armclk_stopctrl
unsigned int apll_con1_l2
unsigned char res102[0xfc]
unsigned int div_stat_fsys1
unsigned int gate_top_sclk_fsys
unsigned int gate_ip_sysrgt
unsigned char res6[0x1f8]
unsigned char res108[0x8]
unsigned int gate_ip_disp1
unsigned int apll_con1_l7
unsigned int apll_con1_l8
unsigned int div_stat_disp0_0
unsigned int clkout_cmu_cdrex_div_stat
unsigned int div_stat_sysrgt
unsigned int clkout_cmu_r1x_div_stat
unsigned char res89[0x3af8]
unsigned char res85b[0xfc]
unsigned char res88[0x1fc]
unsigned int gate_bus_syslft
unsigned int mux_stat_lex
unsigned char res25[0x18]
unsigned int src_mask_fsys
unsigned char res32[0x38f8]
unsigned int div_stat_cpu1
unsigned int clkout_cmu_acp
unsigned int clkout_cmu_r0x
unsigned char res76[0x1c]
unsigned int div_stat_disp1_1
unsigned int mux_stat_top3
unsigned char res26[0x1c]
unsigned int mux_stat_top1
unsigned int div_stat_fsys2
unsigned int div_stat_core0
unsigned int div_stat_cdrex
unsigned int pll_div2_sel
unsigned char res103[0xf8]
unsigned char res27[0x18]
unsigned int div_stat_core1
unsigned char res87[0x1fc]
unsigned int clkout_cmu_isp
unsigned char res28[0x3478]
uint32_t g_comp0_addr_incr
uint32_t g_comp1_addr_incr
uint32_t g_comp2_addr_incr
uint32_t g_comp3_addr_incr