1.. SPDX-License-Identifier: GPL-2.0
2.. include:: ../disclaimer-zh_CN.rst
3
4:Original: Documentation/cpu-freq/core.rst
5
6:������:
7
8 ��������� Yanteng Si <siyanteng@loongson.cn>
9
10:������:
11
12 ��������� Tang Yizhou <tangyeechou@gmail.com>
13
14====================================
15CPUFreq���������CPUFreq������������������������
16====================================
17
18������:
19	- Dominik Brodowski  <linux@brodo.de>
20	- David Kimdon <dwhedon@debian.org>
21	- Rafael J. Wysocki <rafael.j.wysocki@intel.com>
22	- Viresh Kumar <viresh.kumar@linaro.org>
23
24.. ������:
25
26   1.  CPUFreq���������������
27   2.  CPUFreq���������
28   3.  ������Operating Performance Point (OPP)���CPUFreq������������
29
301. CPUFreq���������������
31======================
32
33cpufreq������������������drivers/cpufreq/cpufreq.c������������cpufreq���������CPUFreq������������
34������������������������������������������������������������ "���������" ������������������������������������
35��������������������������������������������������������� ACPI ���������������������������������������������������������������
36��������������������������������������������� ARM ������������ LCD ���������������������������������������
37��������������� "������" loops_per_jiffy ���������������������������������
38
39cpufreq������������������������ cpufreq_cpu_get ��� cpufreq_cpu_put ��������������������� cpufreq ���
40��������������������������������������������������������������� cpufreq_put_cpu ���������������������������������������������
41���������CPU������cpufreq ���������������������������������������
42
432. CPUFreq ���������
44====================
45
46CPUFreq������������������������������������������������
47��������������������������������� linux/include/linux/notifier.h���
48
49������������������������CPUfreq��������� - ������������������������������������
50
51
522.1 CPUFreq���������������
53----------------------------
54
55������������������������������������������������������
56
57���������������������������������������������������������������������������������������������CPUFREQ_CREATE_POLICY������
58������������������������������CPUFREQ_REMOVE_POLICY���
59
60��������������� ``void *pointer`` ���������������������cpufreq_policy������������min���max(���������������������
61������������������kHz���)���������������
62
63
642.2 CPUFreq���������������
65--------------------------------
66
67���CPUfreq������������CPU������������������������������������������CPU������������������������������������������������������������
68������
69
70��������������������������� - CPUFREQ_PRECHANGE or CPUFREQ_POSTCHANGE.
71
72���������������������������������������������������cpufreq_freqs���
73
74======	===============================
75policy	������struct cpufreq_policy���������
76old	���������
77new	���������
78flags	cpufreq���������������
79======	===============================
80
813. ������Operating Performance Point (OPP)���CPUFreq������������
82==================================================================
83������OPP������������������ Documentation/power/opp.rst
84
85dev_pm_opp_init_cpufreq_table -
86	������������������������������������������������������������������OPP���������������������������������������������������
87	cpufreq������������������������
88
89	.. Warning::
90
91		���������������������������������������������
92
93	������::
94
95	 soc_pm_init()
96	 {
97		/* Do things */
98		r = dev_pm_opp_init_cpufreq_table(dev, &freq_table);
99		if (!r)
100			policy->freq_table = freq_table;
101		/* Do other things */
102	 }
103
104	.. note::
105
106		������������������CONFIG_PM_OPP������������������CONFIG_CPU_FREQ���������������
107
108dev_pm_opp_free_cpufreq_table
109	������dev_pm_opp_init_cpufreq_table���������������
110