CV:Constant Voltage恒压 SMMB charger:Switch-ModeBattery Charger and Boost peripheral开关模式电池充电器和升压外围设备 OCV:Open circuitvoltage EOC:End OfCharge充电结束 UUC:UnusableCapacity不可用电量 对应的源代码文件为\kernel\drivers\power\qpnp-vm-bms.c,高通QPNP电压模式的PMIC电池管理系统(Qualcomm'sQPN…
1. compatible节点: qpnp-vm-bms.c使用来控制电池曲线的和BMS功能的,其compatible节点是"qcom,qpnp-vm-bms" 2. probe函数: qpnp_vm_bms_probe函数如下: static int qpnp_vm_bms_probe(struct spmi_device *spmi) { struct qpnp_bms_chip *chip; struct device_node *revid_dev_node; int rc,…
以msm8909为例,高通的主要文件有几个: qpnp-linear-charger.c(线性充电器) qpnp-vm-bms.c(BMS管理) power_supply_core.c(power_supply对外部提供对应接口) 其中,vm_bus的power_supply一般为struct power_supply *bms_psy; 而linear-charger则是struct power_supply usb_psy; (当然这只是一个命名方式而已了) power_supply具体参考…
高通方案的Android设备主要有以下几种开机模式,Android.EDL.Fastboot.Recovery和FFBM,其进入及退出的方式如下表. 开机模式 屏幕显示 冷启动 热启动 按键退出 命令退出 Android/Normal Android界面 按Power键 adb reboot 手机短按,VR长按Power键 adb shell reboot -p(关机) Recovery/OTA/卡刷 Recovery界面 按住OK键(Vol+),再按Power键 adb reboot reco…
Nubia Z5S在某些异常情况或按组合键进入QHSUSB_BULK状态, 这种模式的现象, 猜想windows(实例win7)即使在数据线, 它会出现在计算机n载,甚至会提示要格式化某些分区(这里要强调的是千万不要格式化不论什么分区,否则可能会变成真砖仅仅有返厂了) 关于这个模式能够參考我之前发的一篇文章: http://blog.csdn.net/syhost/article/details/20435957 上面文章中也提到, QHSUSB_BULK模式实际是在sbl分区中实现的, 只是纯…
ASOC的出现是为了让codec独立于CPU,减少和CPU之间的耦合,这样同一个codec驱动就无需修改就可以匹配任何一款平台. 在Machine中已经知道,snd_soc_dai_link结构就指明了该Machine所使用的Platform和Codec.在Codec这边通过codec_dai和Platform侧的cpu_dai相互通信,既然相互通信,就需要遵守一定的规则,其中codec_dai和cpu_dai统一抽象为struct snd_soc_dai结构,而将dai的相关操作使用snd_s…
本文转载自:http://www.voidcn.com/blog/yanleizhouqing/article/p-6037399.html 最近一直在搞电源管理相关内容,之前是8610的bms,现在8916的bms,发现两者还是有点区别的,8916把对last_ocv_uv的估值算法分装成执行文件,作为服务一直运行. 电源管理方面,应该是android驱动开发的一大难点,主要涉及的方面多,如充.放电.休眠唤醒等.这一部分主要讲BMS相关的一些基本概念.电池这一块刚开始入手时,感觉很难,很复杂,…
点击打开链接 高通8064 8974 8926等pm芯片都集成了电量计,估计后续芯片都会一直存在,现在许多项目UI状态栏电池都有百分比显示,所以需要深入分析BMS有助于解决电量方面的BUG. 一: SOC(荷电状态)计算方法 名词: FCC  Full-charge capacity UC     Remaining capacityCC     Coulumb counter    UUC  Unusable capacityRUC   Remaining usable capacity //…
介绍了Android SurfaceFlinger层次以下的图形合成和显示系统,主要基于高通MSM8k MDP4x平台. 做为Android Display专题.SurfaceFlinger的详细介绍参见链接文章. Android GDI之SurfaceFlinger SurfaceFinger按英文翻译过来就是Surface投递者.SufaceFlinger的构成并不是太复杂,复杂的是他的客户端建构.SufaceFlinger主要功能是: )将Layers(Surfaces)内容的刷新到屏幕上…
本文重点针对HDMI在android上的应用,而比较相关的就是overlay机制.overlay在这里只是简单的介绍,后续会有文章再专门详述. 我没记错的话,高通从7X30开始,平台就可以支持HDMI(1.3)输出了.只不过在7x30上通过RGB接口外接一颗HDMI的transmitter来实现:而到了8系列(8x60),高通把这颗IC也集成了,直接就提供HDMI的输出了.(这样下去,以后渐渐的把外围器件都集成了,做底层的估计要失业了,做硬件的似乎工作量也没多少了). 先来看看HW的能力,下图是…