MT6735 - battery相关笔记 (充电、电池状态、zvc、driver与service通信)

本文主要是介绍MT6735 - battery相关笔记 (充电、电池状态、zvc、driver与service通信),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

充电

	kernel-3.18/drivers/misc/mediatek/include/mt-plat/mt6735/include/mach/mt_charging.h#define AC_CHARGER_CURRENT					CHARGE_CURRENT_800_00_MA //先跑这个kernel-3.18/arch/arm64/boot/dts/mt6735.dtsi //好像不是用这个啊,被重赋值了,是alps/kernel-3.18/arch/arm64/boot/dts/xxx_public_3565u.dtsac_charger_current = <80000 >;	/* Unit: 0.01 mA */ //再通过dt跑这个,没这个dt就直接用上面那macro了/kernel-3.18/drivers/power/mediatek/battery_common.c__batt_init_cust_data_from_cust_header();#if defined(BATTERY_DTS_SUPPORT) && defined(CONFIG_OF)__batt_init_cust_data_from_dt();#endif什么是 wake charge state ???流程分析battery_probebatt_init_cust_data();//这里从dts读参数kthread_run(bat_thread_kthread, NULL, "bat_thread_kthread");charger_hv_detect_sw_workaround_init();//?bat_thread_kthread{while (1) {BAT_thread();//wait_event(bat_thread_wq, (bat_thread_timeout == KAL_TRUE));//等PMIC设置bat_thread_timeout}}BAT_thread{mt_battery_charger_detect_check();//[BAT_thread]Cable in, CHR_Type_num=4mt_battery_GetBatteryData //这个比较重要,会获取各个参数,电池电压,充电电流,电池温度,等mt_battery_thermal_check();//热敏电阻温度mt_battery_notify_check();//mt_battery_charging_algorithmBAT_ConstantCurrentModeAction//case CHR_CC: 恒流充电pchr_turn_on_charging //这里设置充电电流select_charging_current()battery_charging_control(CHARGING_CMD_SET_CV_VOLTAGE, &cv_voltage);// == charging_set_cv_voltage 设置 0x0E寄存器 CTRL_VBATcharging_full_check()//什么时候判断为full??battery_charging_control(CHARGING_CMD_GET_CHARGING_STATUS, &status);ncp1854_read_interface((unsigned char) (NCP1854_CON0)...)//0号寄存器返回值6 == chargeDone,5=charging/*这个寄存器什么时候置6 ? 看着好像是RO的* 电压升高到某个值(Vrechg),同时电流降低到某个值(Ieoc) * Vrechg 和 Vchg相关(97% ?), Vchg通过VBAT_SET bits CTRL_VBAT[5:0] //现在是0x2A 4.35v* Ieoc通过IBAT_SET - bits IEOC[2:0] 100~275 默认 150mA*//// DPP是什么/** 充电电流 IBAT_SET bit ICHG[3:0] and ICHG_HIGH* Iinlim* Iinlim_set Iinlim_TA* Input Voltage Based Automatic Charge Current -- ILIM! = 0 && ILIM2 = 1 (CTRL2 AICL_EN)* 温度也会影响Ichg,junction temperature management*/mt_battery_update_status();mt_kpoc_power_off_check();}do_jeita_state_machine //没用jeita ¥¥¥¥¥¥select_jeita_cv //根据温度选择充电电压battery_charging_control(CHARGING_CMD_SET_CV_VOLTAGE, &cv_voltage);pmic_thread_kthread //pmic中断 mediatek, pmic-eint === GPIO206 interrupts = <206 IRQ_TYPE_LEVEL_HIGH>;//但是在excel里,GPIO最大只有203 ???,dws EINT那一栏有206,而且配置好了while(1){pm

这篇关于MT6735 - battery相关笔记 (充电、电池状态、zvc、driver与service通信)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/428921

相关文章

关于WebSocket协议状态码解析

《关于WebSocket协议状态码解析》:本文主要介绍关于WebSocket协议状态码的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录WebSocket协议状态码解析1. 引言2. WebSocket协议状态码概述3. WebSocket协议状态码详解3

JavaScript Array.from及其相关用法详解(示例演示)

《JavaScriptArray.from及其相关用法详解(示例演示)》Array.from方法是ES6引入的一个静态方法,用于从类数组对象或可迭代对象创建一个新的数组实例,本文将详细介绍Array... 目录一、Array.from 方法概述1. 方法介绍2. 示例演示二、结合实际场景的使用1. 初始化二

MyBatis-Plus中Service接口的lambdaUpdate用法及实例分析

《MyBatis-Plus中Service接口的lambdaUpdate用法及实例分析》本文将详细讲解MyBatis-Plus中的lambdaUpdate用法,并提供丰富的案例来帮助读者更好地理解和应... 目录深入探索MyBATis-Plus中Service接口的lambdaUpdate用法及示例案例背景

Flutter监听当前页面可见与隐藏状态的代码详解

《Flutter监听当前页面可见与隐藏状态的代码详解》文章介绍了如何在Flutter中使用路由观察者来监听应用进入前台或后台状态以及页面的显示和隐藏,并通过代码示例讲解的非常详细,需要的朋友可以参考下... flutter 可以监听 app 进入前台还是后台状态,也可以监听当http://www.cppcn

MySQL 中的服务器配置和状态详解(MySQL Server Configuration and Status)

《MySQL中的服务器配置和状态详解(MySQLServerConfigurationandStatus)》MySQL服务器配置和状态设置包括服务器选项、系统变量和状态变量三个方面,可以通过... 目录mysql 之服务器配置和状态1 MySQL 架构和性能优化1.1 服务器配置和状态1.1.1 服务器选项

Android里面的Service种类以及启动方式

《Android里面的Service种类以及启动方式》Android中的Service分为前台服务和后台服务,前台服务需要亮身份牌并显示通知,后台服务则有启动方式选择,包括startService和b... 目录一句话总结:一、Service 的两种类型:1. 前台服务(必须亮身份牌)2. 后台服务(偷偷干

linux进程D状态的解决思路分享

《linux进程D状态的解决思路分享》在Linux系统中,进程在内核模式下等待I/O完成时会进入不间断睡眠状态(D状态),这种状态下,进程无法通过普通方式被杀死,本文通过实验模拟了这种状态,并分析了如... 目录1. 问题描述2. 问题分析3. 实验模拟3.1 使用losetup创建一个卷作为pv的磁盘3.

Java实现状态模式的示例代码

《Java实现状态模式的示例代码》状态模式是一种行为型设计模式,允许对象根据其内部状态改变行为,本文主要介绍了Java实现状态模式的示例代码,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来... 目录一、简介1、定义2、状态模式的结构二、Java实现案例1、电灯开关状态案例2、番茄工作法状态案例

通过prometheus监控Tomcat运行状态的操作流程

《通过prometheus监控Tomcat运行状态的操作流程》文章介绍了如何安装和配置Tomcat,并使用Prometheus和TomcatExporter来监控Tomcat的运行状态,文章详细讲解了... 目录Tomcat安装配置以及prometheus监控Tomcat一. 安装并配置tomcat1、安装

Linux之进程状态&&进程优先级详解

《Linux之进程状态&&进程优先级详解》文章介绍了操作系统中进程的状态,包括运行状态、阻塞状态和挂起状态,并详细解释了Linux下进程的具体状态及其管理,此外,文章还讨论了进程的优先级、查看和修改进... 目录一、操作系统的进程状态1.1运行状态1.2阻塞状态1.3挂起二、linux下具体的状态三、进程的