Lines Matching +full:opp +full:- +full:1000000000

1 .. SPDX-License-Identifier: GPL-2.0
2 .. include:: ../disclaimer-zh_CN.rst
4 :Original: Documentation/power/opp.rst
11 操作性能值(OPP)库
14 (C) 2009-2010 Nishanth Menon <nm@ti.com>, 德州仪器公司
28 1.1 何为操作性能值(OPP)?
29 ------------------------------
46 - {300000000, 1000000}
47 - {800000000, 1200000}
48 - {1000000000, 1300000}
51 ----------------
53 OPP库提供了一组辅助函数来组织和查询OPP信息。该库位于drivers/opp/目录下,其头文件
59 (用户) -> 注册一个默认的OPP集合 -> (库)
60 (SoC框架) -> 在必要的情况下,对某些OPP进行修改 -> OPP layer
61 -> 搜索/检索信息的查询 ->
64 OPP。这个链表的长度被期望是一个最优化的小数字,通常每个设备大约5个。初始链表包含了
89 方式注册OPP条目 - 典型的数字范围小于5。通过注册OPP生成的OPP链表,在整个设备运行过程
109 pr_err("%s: unable to register mpu opp(%d)\n", r);
132 opp = dev_pm_opp_find_freq_exact(dev, 1000000000, false);
133 dev_pm_opp_put(opp);
135 if (IS_ERR(opp)) {
139 dev_pm_opp_enable(dev,1000000000);
151 opp = dev_pm_opp_find_freq_floor(dev, &freq);
152 dev_pm_opp_put(opp);
160 opp = dev_pm_opp_find_freq_ceil(dev, &freq);
161 dev_pm_opp_put(opp);
163 例: 一个SoC的cpufreq_driver->target的简易实现::
169 opp = dev_pm_opp_find_freq_ceil(dev, &freq);
170 dev_pm_opp_put(opp);
171 if (!IS_ERR(opp))
195 opp = dev_pm_opp_find_freq_exact(dev, 1000000000, false);
196 dev_pm_opp_put(opp);
198 if (!IS_ERR(opp))
199 ret = dev_pm_opp_enable(dev, 1000000000);
211 opp = dev_pm_opp_find_freq_exact(dev, 1000000000, true);
212 dev_pm_opp_put(opp);
214 if (!IS_ERR(opp))
215 ret = dev_pm_opp_disable(dev, 1000000000);
234 opp = dev_pm_opp_find_freq_ceil(dev, &freq);
235 v = dev_pm_opp_get_voltage(opp);
236 dev_pm_opp_put(opp);
262 return -EINVAL;
264 return -EINVAL;
280 while (!IS_ERR(opp = dev_pm_opp_find_freq_ceil(dev, &freq))) {
284 dev_pm_opp_put(opp);
297 |- device 1
298 | |- opp 1 (availability, freq, voltage)
299 | |- opp 2 ..
301 | `- opp n ..
302 |- device 2
304 `- device m
326 +-----+ /- dev_pm_opp_enable
327 dev_pm_opp_add --> | opp | <-------
328 | +-----+ \- dev_pm_opp_disable
329 \-------> domain_info(device)
332 /-- dev_pm_opp_find_freq_ceil ---\ +-----+
333 domain_info<---- dev_pm_opp_find_freq_exact -----> | opp |
334 \-- dev_pm_opp_find_freq_floor ---/ +-----+
337 +-----+ /- dev_pm_opp_get_voltage
338 | opp | <---
339 +-----+ \- dev_pm_opp_get_freq
341 domain_info <- dev_pm_opp_get_opp_count