|
发表于 2020-8-21 17:39:53
7726 浏览 0 回复
插入充电器检测
插入时,模块VBUS上电,触发pmic中断
- kernel-4.4/drivers/misc/mediatek/pmic/mt6356/v1/pmic_chr_type_det_v2.c
- pmic_register_interrupt_callback(INT_CHRDET_EDGE, chrdet_int_handler);
- pmic_enable_interrupt(INT_CHRDET_EDGE, 1, "PMIC");//触发PNIC中断
- chrdet_int_handler()
- 调用
- do_charger_detect() //判断是否为OTG模式(!mt_usb_is_device())
- 调用
- chrdet_inform_psy_changed(g_chr_type, 1);
- 调用
- power_supply_set_property(chrdet_psy, POWER_SUPPLY_PROP_ONLINE, &propval);
- power_supply_set_property(chrdet_psy, POWER_SUPPLY_PROP_CHARGE_TYPE, &propval);
- (上报系统充电器类型及状态状态)
- 然后调到:
- kernel-4.4\drivers\power\mediatek\charger\mtk_chg_type_det.c文件的函数:
- mt_charger_get_property()和 mt_charger_set_property()
- 最后调用
- kernel-4.4\drivers\power\mediatek\charger\mtk_charger.c中
- 函数mtk_charger_int_handler(void)
- 唤醒charger_thread :_wake_up_charger(pinfo);
|
|
|
|
|
|
|
登录或注册
|