Commit | Line | Data |
---|---|---|
a125a17f JL |
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 | ||
13 | enum 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 | ||
21 | struct 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 | ||
34 | extern int exynos4210_cpufreq_init(struct exynos_dvfs_info *); | |
a35c5051 | 35 | extern int exynos4x12_cpufreq_init(struct exynos_dvfs_info *); |
562a6cbe | 36 | extern int exynos5250_cpufreq_init(struct exynos_dvfs_info *); |