随笔分类 - PMIC / Battery Driver
摘要:1. Linux pm qos PM QOS表示linux 的电源管理服务质量 linux使用 suspned/resume 机制在系统不使用的时候, 整体进入休眠状态,以节省电源,后面又引入更细粒度的runtime PM, 在设备不使用时, 单独suspend一个设备 不管是generic PM还
阅读全文
摘要:近来集中遇到不少user抱怨手机卡顿的case,能引起系统卡顿的原因可以成千上万,但最核心的起因通常避不开CPU被限制频率或多核CPU部分cpu被关核了。 本文将从几个工作中遇到的实际案例出发(只分析与CPU调控有关的案例),先尽可能地还原出完整的案发现场,再分析具体情况下CPU频率和核心的变化情况
阅读全文
摘要:1. 前言 在当前移动处理芯片性能过剩的时代,用户对手机的温度要求越来越高,更加苛刻的标准,最好永不发热。在这种背景下,温控领域的工作变得日益重要,众多大厂都在不断魔改和优化他们的温控技术。今天我们也带大家看看温控技术的其中一部分:Thermal Engine。下面,我们将基于 GitHub 上的源
阅读全文
摘要:1. 前言 在计算机系统中,CPU的功能是执行程序,总结起来就是我们在教科书上学到的:取指、译码、执行。那么问题来了,如果没有程序要执行,CPU要怎么办?也许您会说,停掉就是了啊。确实,是要停掉,但何时停、怎么停,却要仔细斟酌,因为实际的软硬件环境是非常复杂的。 我们回到Linux kernel上,
阅读全文
摘要:1. 前言 也许大家会觉得奇怪:为什么Linux kernel把对ARM big·Lttile的支持放到了cpufreq的框架中? 众所周知,ARM的big·Little架构,也称作HMP(具体可参考“Linux CPU core的电源管理(2)_cpu topology”中相关的介绍),通过在一个
阅读全文
摘要:1. 前言 前面两篇clock framework的分析文章,分别从clock consumer和clock provider的角度,介绍了Linux kernel怎么管理系统的clock资源,以及device driver怎么使用clock资源。本文将深入到clock framework的内部,分
阅读全文
摘要:1. 前言 本文接上篇文章,从clock driver的角度,分析怎么借助common clock framework管理系统的时钟资源。换句话说,就是怎么编写一个clock driver。 由于kernel称clock driver为clock provider(相应的,clock的使用者为clo
阅读全文
摘要:1. 前言 common clock framework是用来管理系统clock资源的子系统,根据职能,可分为三个部分: 1)向其它driver提供操作clocks的通用API。 2)实现clock控制的通用逻辑,这部分和硬件无关。 3)将和硬件相关的clock控制逻辑封装成操作函数集,交由底层的p
阅读全文
摘要:1. 前言 本文是分析cpufreq framework之前的一篇前置文章,用于介绍Linux电源管理中的Operating Performance Point (OPP)接口。 OPP是一个单纯的软件library,用于归纳、管理各个硬件模块的、可工作的{频率}/ {电压}组合。它不涉及任何硬件,
阅读全文
摘要:/sys/class/regulator下有所有的regular,如 每个节点有如下的属性 cpu0-cpu 使用者名字 device max_microvolts 最大电压 microvolts min_microvolts 最小电压 name 电源名字 num_users 当前的使用者数量(us
阅读全文
摘要:1 什么是进程冻结 进程冻结技术(freezing of tasks)是指在系统hibernate或者suspend的时候,将用户进程和部分内核线程置于“可控”的暂停状态。 2 为什么需要冻结技术 假设没有冻结技术,进程可以在任意可调度的点暂停,而且直到cpu_down才会暂停并迁移。这会给系统带来
阅读全文
摘要:1. 前言 per-device PM QoS是针对指定设备的QoS framework,背后的思考如下: 1)resume_latency 在Runtime PM的框架下,当device的引用计数减为0的时候,RPM会suspend该device。不过,device进入suspend状态以及从su
阅读全文
摘要:1. 前言 回顾上一篇文章(Linux PM QoS framework(1)_概述和软件架构),PM QoS framework抽象出4个系统级别的QoS constraint(统称为PM QoS class),分别是cpu&dma latency、network latency、network
阅读全文
摘要:1. 前言 QOS为Quality Of Service(服务质量)的简称,对PM QoS而言,表示Linux kernel电源管理相关的服务质量。那到底什么是服务质量呢? 我们知道,Linux PM的主要功能,是节省功耗,但同时,会付出一定的性能代价,例如延迟(latency)增加、吞吐量(thr
阅读全文
摘要:本章节分析governor之一的step_wise。 1、基本术语概念 在介绍之前,先介绍几个术语概念来帮助大家理解: 1.1 trip point 可以理解为一个阈值吧,每一个温度区间的阈值可以理解为一个trip point。 1.2 cooling state 可以认为是温控调节的下一目标的索引
阅读全文
摘要:IPA(Intelligent PowerAllocation)是由ARM开发的符合linux内核thermalframework的governor,代码中的名字为power_allocator,旨在满足温控效果的条件下最大化性能。 IPA背景 熟悉ARM终端芯片系统的开发人员,应该对EAS(Ene
阅读全文
摘要:1. 前言 本文从regulator driver的角度,描述怎样基于regulator framework编写regulator驱动。同时,以此为契机,学习、理解regulator有关的物理特性,以便能够更好的使用它们。 2. regulator driver的实现步骤 2.1 确定系统中regu
阅读全文
摘要:1. 前言 Regulator,中文名翻译为“稳定器”,在电子工程中,是voltage regulator(稳压器)或者current regulator(稳流器)的简称,指可以自动维持恒定电压(或电流)的装置。 voltage regulator最早应用于功放电路中,主要用于滤除电源纹波(100或
阅读全文
摘要:SOP算法开发 SOP目前可靠的方法为基于大量的试验结果,标定电性能数据库,查表法实时上报,后期加入SOH修正; 建立SOP与SOC、温度T的三维表格; 需要允许放电电流的表格; 需要允许放电功率的表格; 需要根据2s,10s,30s,600s分别建立; 需要试验确定, SOP与定义的SOH之间的
阅读全文
摘要:SOH definition No clear definition Strong application oriented Factors reflect SOH Capacity Internal resistance Self-discharge rate USABC standards C
阅读全文


浙公网安备 33010602011771号