和你一起终身学习,这里是程序员Android
经典好文推荐,通过阅读本文,您将收获以下知识点:
一、高温触发 Kernel Exception 重启问题
二、解决方案
三、提高电池温度方案
一、 高温触发 Kernel Exception 重启问题
手机 电池温度 默认60
度以上高温会触发手机安全机制,让手机管家或者重启。
由温度异常导致手机重启的部分 Log
如下:
高温情况下,Kernel Exception引起的重启问题
二、解决方案
此问题 需要驱动同事修改底层battery.c
文件中的一个地址,不让其写为dead
,就不会重启。或者提高电池温度参数。
三、提高电池温度方案
提高电池温度的方案如下:
1.修改mtk_battery_table.h
/alps/kernel-4.4/drivers/misc/mediatek/include/mt-plat/mt6739/include/mach/mtk_battery_table.h
* ============================================================
*/
+//#define SPROCOMM_NTC //wang add
+#ifdef SPROCOMM_NTC
+#define NTC_COMP_RES 42
+#endif
+
/* Qmax for battery */
#define Q_MAX_L_CURRENT 0
#define Q_MAX_H_CURRENT 10000
@@ [-111,7](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/misc/mediatek/include/mt-plat/mt6739/include/mach/mtk_battery_table.h;h=7cb7b5e7e735a1907b941a6df5755c582ffca0ac;hb=7cb7b5e7e735a1907b941a6df5755c582ffca0ac#l111) [+116,8](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/misc/mediatek/include/mt-plat/mt6739/include/mach/mtk_battery_table.h;h=76ef73904571e7abf677cf9b73783b52131c467a;hb=76ef73904571e7abf677cf9b73783b52131c467a#l116) @@ int g_QMAX_SYS_VOL_T4[TOTAL_BATTERY_NUMBER] = {36000, 36010, 36020, 36030};
#define BIF_NTC_R 16000
#if (BAT_NTC_10 == 1)
-struct FUELGAUGE_TEMPERATURE Fg_Temperature_Table[21] = {
+#define NTC_NUM 25 //wang add 20180528
+struct FUELGAUGE_TEMPERATURE Fg_Temperature_Table[NTC_NUM] = {
{-40, 195652},
{-35, 148171},
{-30, 113347},
@@ [-132,12](http://192.168.11.104