Qualcomm技术论坛
直播中

周棠亨

9年用户 1161经验值
擅长:可编程逻辑 电源/新能源
私信 关注
[经验]

基于Dragonboard 410c的PMIC简介

基于Dragonboard 410c的PMIC简介主要从以下几个方面介绍:

一、PM8916芯片介绍

PM8916针对MSM8x16 / MSM8x39和MSM8929芯片组进行了优化。PM8916-1针对MSM8909 / MSM8209 / MSM8208芯片组进行了优化。单充电源
- USB
电池线性充电;所有无线产品电路的直流电源;整个芯片组的系统时钟和睡眠时钟源;三合一支持;双向电池/
UICC报警(BUA)用于UICC正常关机;
外部稳压器(如外部降压转换器)和WLED调光器的控制。




二、高通充电charger硬件框图介绍












三、PM8916的充电loop分析

充电过程中存在4个闭环控制

"vchg-loop",

"ichg-loop",

"ibat-loop",

"vdd-loop";

任何一个闭环控制最终都会影响到充电电流大小,四个闭环不会同时达到临界值,但是同时会有多个闭环控制在工作,如下图分析









四、PM8916软件架构
















五、调试方法

读取PMIC(pm8916)寄存器的值

oot@M939-F400:/sys/kernel/debug/spmi/spmi-0 # echo 150 > count

root@M939-F400:/sys/kernel/debug/spmi/spmi-0 # echo 0x800 > address

root@M939-F400:/sys/kernel/debug/spmi/spmi-0 # cat data > /data/pon.txt

root@M939-F400:/sys/kernel/debug/spmi/spmi-0 # cat data


00800 00 03 03 00 01 01 00 98 80 00 00 00 00 00 00 00

00810 00 03 03 03 00 03 03 00 00 00 00 00 00 00 00 00

00820 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

00830 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

00840 0F 07 04 80 0F 07 04 80 0F 07 04 80 0F 07 04 00

00850 0F 07 04 00 0F 03 08 00 00 00 01 80 00 00 00 00

00860 00 00 00 80 00 00 04 80 00 00 04 00 00 00 00 00

00870 0F 00 00 00 02 04 00 00 00 00 00 00 00 00 00 00

00880 FE 00 40 00 00 00 00 00 05 00 20 00 01 00 00 00

00890 00 40 00 00 00 00



//Spmi.c (driversspmi)

spmi_dfs_add_controller

debugfs_create_u32("count", DFS_MODE, dir, &ctrl_data->cnt);

debugfs_create_x32("address", DFS_MODE, dir, &ctrl_data->addr);

debugfs_create_file("data", DFS_MODE, dir, ctrl_data,&spmi_dfs_reg_fops);

list_add(&ctrl_data->node, &dbgfs_data.ctrl);     



spmi_driver_register


drv->driver.bus = &spmi_bus_type;     {spmi_device_match匹配}

更多回帖

发帖
×
20
完善资料,
赚取积分