第19章 Linux电源管理的系统架构和驱动之Linux电源管理的全局架构

本章Linux设备驱动工程师必备的知识体系

Linux在消费电子领域的应用相当普遍,而对于消费电子产品,省电是一个重要的议题。

1、Linux电源管理的总体架构

2、CPUFreq、CPUIdle、CPU热插拔以及底层的基础设施Regulator(稳压电源管理)OPP(某个domain所支持的<频率,电压>对的集合)以及电源管理的调试工具PowerTop

3、系统挂起到RAM的过程以及设备驱动是如何对挂起到RAM支持的

4、设备驱动的运行时挂起

19.1 Linux电源管理的全局架构

    Linux电源管理非常复杂,牵扯到系统级的待机频率电压变换系统空闲时的处理以及每个设备驱动对系统待机的支持每个设备的运行时(Runtime)电源管理,Linux电源管理和系统中的每个设备驱动都息息相关。

    备注:

    PM QoS(Quality of Service,电源管理相关的服务质量)

    DVFS(Dynamic Voltage Frequency Scaling 动态电压频率扩缩,功耗会降的更低

    OPP(某个domain所支持的<频率,电压>对的集合),Operating Performance Point简称OPP

    Regulator(稳压电源管理)

    挂起->休眠

    恢复->唤醒

    对于消费电子产品来说,电源管理相当重要,图19.1呈现Linux内核电源管理的整体架构。


图19.1 Linux内核电源管理的整体架构

大体归纳为如下几类:

1)CPU在运行时根据系统负载进行动态电压和频率变换的CPUFreq

2)CPU在系统空闲时根据空闲的情况进行低功耗模式的CPUIdle

3)多核系统下CPU的热插拔支持

4)系统和设备针对延迟的特别需求而提出申请的PM QoS,它会作用于CPUIdle的具体策略

5)设备驱动针对系统挂起到RAM/硬盘的一系列入口函数

6)SoC进入挂起状态、SDRAM自刷新的入口

7)设备的运行时动态电源管理,根据使用情况动态开关设备

8)底层的时钟、稳压器、频率/电压表(OPP模块完成)支撑,各驱动子系统都可能用到


猜你喜欢

转载自blog.csdn.net/xiezhi123456/article/details/80606515
今日推荐