PageRenderTime 22ms CodeModel.GetById 14ms app.highlight 6ms RepoModel.GetById 1ms app.codeStats 0ms

/arch/arm/mach-exynos/include/mach/cpufreq.h

https://github.com/AICP/kernel_google_msm
C Header | 36 lines | 22 code | 3 blank | 11 comment | 0 complexity | a9bbbf8065d4eeb859e3dfe4d026ccef MD5 | raw file
 1/* linux/arch/arm/mach-exynos/include/mach/cpufreq.h
 2 *
 3 * Copyright (c) 2010 Samsung Electronics Co., Ltd.
 4 *		http://www.samsung.com
 5 *
 6 * EXYNOS - CPUFreq support
 7 *
 8 * This program is free software; you can redistribute it and/or modify
 9 * it under the terms of the GNU General Public License version 2 as
10 * published by the Free Software Foundation.
11*/
12
13enum cpufreq_level_index {
14	L0, L1, L2, L3, L4,
15	L5, L6, L7, L8, L9,
16	L10, L11, L12, L13, L14,
17	L15, L16, L17, L18, L19,
18	L20,
19};
20
21struct exynos_dvfs_info {
22	unsigned long	mpll_freq_khz;
23	unsigned int	pll_safe_idx;
24	unsigned int	pm_lock_idx;
25	unsigned int	max_support_idx;
26	unsigned int	min_support_idx;
27	struct clk	*cpu_clk;
28	unsigned int	*volt_table;
29	struct cpufreq_frequency_table	*freq_table;
30	void (*set_freq)(unsigned int, unsigned int);
31	bool (*need_apll_change)(unsigned int, unsigned int);
32};
33
34extern int exynos4210_cpufreq_init(struct exynos_dvfs_info *);
35extern int exynos4x12_cpufreq_init(struct exynos_dvfs_info *);
36extern int exynos5250_cpufreq_init(struct exynos_dvfs_info *);