请教一个 scaling_available_frequencies 文件的问题

2016-07-14 01:20:08 +08:00
 Thiece

系统是如何知道 CPU 支持哪些频率并写入到 scaling available frequencies 配置文件中的呢? 如果我直接修改了 scaling available frequencies 文件是否会引起什么后果?

1886 次点击
所在节点    Linux
4 条回复
redsonic
2016-07-14 07:24:58 +08:00
scaling available frequencies 是只读的吧。 cpu 可用频率存在于 bios acpi 的一个表中。 bios 上电以后会侦测 cpu 的类型,选择对应的可用频率表。所以很多老主板要支持新 cpu 一般都是需要刷 bios 的。内核在变频时把 cpu stats 作为索引选择表中的具体项。
Thiece
2016-07-14 10:59:32 +08:00
@redsonic 那移动端的 SOC 是怎么处理的呢?
redsonic
2016-07-14 11:37:46 +08:00
没做过移动设备的底层开发,但之前了解一点, ARM 有一个 device tree ,写在 firmware 或 uboot 上面,描述板子上的硬件配置,和 x86 的 acpi 差不多但简单很多,可以看内核 arch/arm/boot/dts 里面有一些直接支持的 cpu 的 device tree :

/*
* Device Tree Source for OMAP34xx/OMAP35xx SoC
*
* Copyright (C) 2013 Texas Instruments Incorporated - http://www.ti.com/
*
* This file is licensed under the terms of the GNU General Public License
* version 2. This program is licensed "as is" without any warranty of any
* kind, whether express or implied.
*/

#include "omap3.dtsi"

/ {
cpus {
cpu@0 {
/* OMAP343x/OMAP35xx variants OPP1-5 */
operating-points = <
/* kHz uV */
125000 975000
250000 1075000
500000 1200000
550000 1270000
600000 1350000
>;
clock-latency = <300000>; /* From legacy driver */
};
};
.........................

好像编译内核的时候会将这个文本描述编译成二进制文件,然后烧进去。具体可能要问问搞 BSP 的人
最后内核通过一套 OPP 接口来访问它。
Thiece
2016-07-14 14:45:06 +08:00
@redsonic 还需要慢慢的来研究研究_(:з」∠)_

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/292351

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX