Qualcomm pmic充电流程分析(msm8660)

来源:互联网 发布:linux 命令行 网页显示 编辑:程序博客网 时间:2024/05/17 03:17

首先软件上Pmic CHGVAL中断触发,pm8058_chg_chgval_handler函数被调用,即表明pmic检测到usb_vbus,说明有usb或者dc的插入,接着进入充电流程;

之后调用msm_charger_notify_event(),

在该函数中调度工作队列msm_chg.queue_work;之后调用到工作队列处理函数process_events();再之后逐步调用到pmic8058中的pm8058_start_charging()。

pm8058_chg_chgval_handler()
    ——>msm_charger_notify_event()
        ——>process_events()
            ——>handle_event()
                ——>handle_charger_ready()
                    ——>msm_enable_system_current()
                    ——>msm_start_charging()
                       ——>pm8058_start_charging()
                       
                 
在pm8058_start_charging()中会调度end of charge的一个工作队列,要是判断充满电则结束充电,否则继续调度该工作队列;
static void eoc_worker(struct work_struct *work)
{

----;
}

以后慢慢完善;


http://blog.csdn.net/linux_devices_driver/article/details/8836970

0 0
原创粉丝点击