This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] Linux/AM3359:ICEv2上的电源管理

Guru**** 2616675 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/659617/linux-am3359-power-management-on-icev2

器件型号:AM3359

工具/软件:Linux

您好!
客户尝试使用 Linux RT 04.02.00.09在 AM335x-icev2 EVM 上配置 cpufreq (DVFS)。
processors.wiki.ti.com/.../Linux_Core_Power_Management_User's_Guide_(v4.4)

为此、他按照上述 Wiki 中的步骤配置内核(启用 cpufreq 和 cpudle-请参阅所附的内核配置)并重建内核+模块+器件树(AM335x-icev2.dts)。 然后、他将 zImage 和.dTB 复制到 SD 卡并运行 modules_install。
重新引导后,他从 CLI 执行了以下命令:
1。
电路板附带了 scaling_governor = performance。
功耗为~123mA@24V。

2.
root@AM335x-EVM:~# echo onDemand >/sys/devices/system/cpu/cpufreq/policy0/scaling_governor
root@AM335x-EVM:~# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
300000
多次读取 scaling_cur_freq 时切换频率

3.
root@AM335x-EVM:~# echo userspace >/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
root@AM335x-EVM:~# echo 300000 >/sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
root@AM335x-EVM:~# cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
300000

多次读取 scaling_cur_freq 时、频率固定为300000

尽管频率在变化、但根本不节能。
在所有情况下、EVM 的电流消耗均为~123mA@24V。

他的内核.config 中是否缺少某些内容?

是否还有需要更新/复制到 SD 卡的文件?

此致、Holger

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Holger、

    我将查看您的问题并返回给您。

    同时、请浏览以下文档:

    www.ti.com/.../sprac74a.pdf

    此致、
    帕维尔
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Holger、

    cpufreq (DVFS)和 CPUIdle 是两种不同的电源管理技术。

    cpufreq - CPU 在执行期间不会被均匀加载。 这提供了一个根据当前 CPU 负载调整/调节电压和频率以节省功耗的机会。

    CPUIdle -当执行空闲循环时、内核不执行任何有用的"工作"。 这是一个省电的机会。 cpuidle该框架有助于在空闲状态期间节省功耗。

    您不应将这两者混合使用、一次只能使用其中一个。

    让我们关注 cpufreq。 您对 kernel/DTS 文件所做的确切更改是什么? cpufreq 应使用默认的预构建二进制文件。 默认情况下、cpufreq、cpufreq-CPU0驱动程序和所有标准调速器均启用、并将按需调速器选为默认调速器。

    在启动内核时、在执行任何其他操作之前、请提供以下命令的输出:

    $ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors 
    $ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor 
    $ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq 
    $ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_frequencies 



    帕维尔