当前位置: 首页 > news >正文

烟台网站建设黄冈网站建设收费

烟台网站建设,黄冈网站建设收费,wordpress问卷填报主题,定制柜子多少钱一平方和你一起终身学习,这里是程序员Android 经典好文推荐,通过阅读本文,您将收获以下知识点: 一、高温触发 Kernel Exception 重启问题二、解决方案三、提高电池温度方案 一、 高温触发 Kernel Exception 重启问题 手机 电池温度 默认60度以上高温…

28c9da71e49cdac84009a7b7179ba59c.gif

和你一起终身学习,这里是程序员Android

经典好文推荐,通过阅读本文,您将收获以下知识点:

一、高温触发 Kernel Exception 重启问题
二、解决方案
三、提高电池温度方案

一、 高温触发 Kernel Exception 重启问题

手机 电池温度 默认60度以上高温会触发手机安全机制,让手机管家或者重启。

由温度异常导致手机重启的部分 Log 如下:

6500abb7e8c5454b95d6778263596ee3.jpeg

高温情况下,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/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#l132) [+138,17](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#l138) @@ struct FUELGAUGE_TEMPERATURE Fg_Temperature_Table[21] = {{45, 4917},{50, 4161},{55, 3535},-               {60, 3014}+               {60, 3014},+               {65, 2586},+               {70, 2228},+               {75, 1925},+               {80, 1669}};#endif#if (BAT_NTC_47 == 1)-struct FUELGAUGE_TEMPERATURE Fg_Temperature_Table[21] = {+#define NTC_NUM 21 //wang add 20180528+struct FUELGAUGE_TEMPERATURE Fg_Temperature_Table[NTC_NUM] = {{-40, 1747920},{-35, 1245428},{-30, 898485},

2. 修改mtk_ts_battery.c

/alps/kernel-4.4/drivers/misc/mediatek/thermal/common/thermal_zones/mtk_ts_battery.c

@@ [-134,7](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/misc/mediatek/thermal/common/thermal_zones/mtk_ts_battery.c;h=f807c7272f610a9e61307eaebe0057ee0f157490;hb=f807c7272f610a9e61307eaebe0057ee0f157490#l134) [+134,7](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/misc/mediatek/thermal/common/thermal_zones/mtk_ts_battery.c;h=e201c1fc84ba09e04f8d53a5ca11993848df1feb;hb=e201c1fc84ba09e04f8d53a5ca11993848df1feb#l134) @@ static int bat_temp = 21234;/* static int battery_write_flag=0; */-#define mtktsbattery_TEMP_CRIT 60000   /* 60.000 degree Celsius */+#define mtktsbattery_TEMP_CRIT 80000   /* 60.000 degree Celsius */ //wang add 20180528#define mtktsbattery_dprintk(fmt, args...)   \do {                                    \@@ [-455,8](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/misc/mediatek/thermal/common/thermal_zones/mtk_ts_battery.c;h=f807c7272f610a9e61307eaebe0057ee0f157490;hb=f807c7272f610a9e61307eaebe0057ee0f157490#l455) [+455,8](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/misc/mediatek/thermal/common/thermal_zones/mtk_ts_battery.c;h=e201c1fc84ba09e04f8d53a5ca11993848df1feb;hb=e201c1fc84ba09e04f8d53a5ca11993848df1feb#l455) @@ static int tsbat_sysrst_set_cur_state(struct thermal_cooling_device *cdev, unsigpr_debug("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@");pr_debug("*****************************************");pr_debug("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@");--               *(unsigned int *)0x0 = 0xdead;  /* To trigger data abort to reset the system for thermal protection. */+               //wang add 20180528+               //*(unsigned int *)0x0 = 0xdead;        /* To trigger data abort to reset the system for thermal protection. */}return 0;}

3. 修改 mtk_battery.c

alps/kernel-4.4/drivers/power/mediatek/battery/mtk_battery.c

@@ [-2041,15](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/power/mediatek/battery/mtk_battery.c;h=424147210393fd33fb205b40414683f5549b3cc2;hb=424147210393fd33fb205b40414683f5549b3cc2#l2041) [+2041,15](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/power/mediatek/battery/mtk_battery.c;h=97a739dc0bbddd02b32c85c1c99da6006e81e746;hb=97a739dc0bbddd02b32c85c1c99da6006e81e746#l2041) @@ unsigned int TempConverBattThermistor(int temp)int i;unsigned int TBatt_R_Value = 0xffff;-       if (temp >= Fg_Temperature_Table[20].BatteryTemp) {-               TBatt_R_Value = Fg_Temperature_Table[20].TemperatureR;+       if (temp >= Fg_Temperature_Table[NTC_NUM - 1].BatteryTemp) {+               TBatt_R_Value = Fg_Temperature_Table[NTC_NUM - 1].TemperatureR;} else if (temp <= Fg_Temperature_Table[0].BatteryTemp) {TBatt_R_Value = Fg_Temperature_Table[0].TemperatureR;} else {RES1 = Fg_Temperature_Table[0].TemperatureR;TMP1 = Fg_Temperature_Table[0].BatteryTemp;-               for (i = 0; i <= 20; i++) {+               for (i = 0; i < NTC_NUM; i++) {if (temp <= Fg_Temperature_Table[i].BatteryTemp) {RES2 = Fg_Temperature_Table[i].TemperatureR;TMP2 = Fg_Temperature_Table[i].BatteryTemp;@@ [-2078,13](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/power/mediatek/battery/mtk_battery.c;h=424147210393fd33fb205b40414683f5549b3cc2;hb=424147210393fd33fb205b40414683f5549b3cc2#l2078) [+2078,13](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/power/mediatek/battery/mtk_battery.c;h=97a739dc0bbddd02b32c85c1c99da6006e81e746;hb=97a739dc0bbddd02b32c85c1c99da6006e81e746#l2078) @@ int BattThermistorConverTemp(int Res)if (Res >= Fg_Temperature_Table[0].TemperatureR) {TBatt_Value = -40;-       } else if (Res <= Fg_Temperature_Table[20].TemperatureR) {-               TBatt_Value = 60;+       } else if (Res <= Fg_Temperature_Table[NTC_NUM - 1].TemperatureR) {+               TBatt_Value = 80;} else {RES1 = Fg_Temperature_Table[0].TemperatureR;TMP1 = Fg_Temperature_Table[0].BatteryTemp;-               for (i = 0; i <= 20; i++) {+               for (i = 0; i < (NTC_NUM - 1); i++) {if (Res >= Fg_Temperature_Table[i].TemperatureR) {RES2 = Fg_Temperature_Table[i].TemperatureR;TMP2 = Fg_Temperature_Table[i].BatteryTemp;@@ [-2098,7](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/power/mediatek/battery/mtk_battery.c;h=424147210393fd33fb205b40414683f5549b3cc2;hb=424147210393fd33fb205b40414683f5549b3cc2#l2098) [+2098,7](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/power/mediatek/battery/mtk_battery.c;h=97a739dc0bbddd02b32c85c1c99da6006e81e746;hb=97a739dc0bbddd02b32c85c1c99da6006e81e746#l2098) @@ int BattThermistorConverTemp(int Res)TBatt_Value = (((Res - RES2) * TMP1) + ((RES1 - Res) * TMP2)) / (RES1 - RES2);}-       bm_trace("[BattThermistorConverTemp] %d %d %d %d %d %d\n", RES1, RES2, Res, TMP1, TMP2, TBatt_Value);+       bm_trace("[BattThermistorConverTemp] %d %d %d %d %d %d, wwwwwNTC_NUM = %d\n", RES1, RES2, Res, TMP1, TMP2, TBatt_Value, NTC_NUM);return TBatt_Value;}@@ [-2334,8](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/power/mediatek/battery/mtk_battery.c;h=424147210393fd33fb205b40414683f5549b3cc2;hb=424147210393fd33fb205b40414683f5549b3cc2#l2334) [+2334,8](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/power/mediatek/battery/mtk_battery.c;h=97a739dc0bbddd02b32c85c1c99da6006e81e746;hb=97a739dc0bbddd02b32c85c1c99da6006e81e746#l2334) @@ int force_get_tbat(bool update)bat_temperature_val = force_get_tbat_internal(update);-       while (counts < 5 && bat_temperature_val >= 60) {-               bm_err("[force_get_tbat]over60 count=%d, bat_temp=%d\n", counts, bat_temperature_val);+       while (counts < 5 && bat_temperature_val >= 80) {//wang submit 20180524+               bm_err("[force_get_tbat]over80 count=%d, bat_temp=%d\n", counts, bat_temperature_val);bat_temperature_val = force_get_tbat_internal(true);counts++;}

4.修改 mtk_battery_internal.h

alps/kernel-4.4/drivers/power/mediatek/battery/mtk_battery_internal.h

@@ [-34,7](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/power/mediatek/battery/mtk_battery_internal.h;h=6c2293cbfad5a14e479c095779d82e88d1032bcb;hb=6c2293cbfad5a14e479c095779d82e88d1032bcb#l34) [+34,7](http://192.168.11.104/gitweb/?p=alps-mp-o1.mp1-V1.git;a=blob;f=alps/kernel-4.4/drivers/power/mediatek/battery/mtk_battery_internal.h;h=304fc84470f8bdfdece2439cc5376b15c0b4dfba;hb=304fc84470f8bdfdece2439cc5376b15c0b4dfba#l34) @@#define SHUTDOWN_TIME 40#define AVGVBAT_ARRAY_SIZE 30#define INIT_VOLTAGE 3450-#define BATTERY_SHUTDOWN_TEMPERATURE 60+#define BATTERY_SHUTDOWN_TEMPERATURE 80/* ============================================================ *//* typedef and Struct*/

参考文献:

【腾讯文档】Android Framework 知识库
https://docs.qq.com/doc/DSXBmSG9VbEROUXF5

友情推荐:

Android 开发干货集锦

至此,本篇已结束。转载网络的文章,小编觉得很优秀,欢迎点击阅读原文,支持原创作者,如有侵权,恳请联系小编删除,欢迎您的建议与指正。同时期待您的关注,感谢您的阅读,谢谢!

b536fae6278852ef7f266bf1822de3a5.jpeg

点击阅读原文,为大佬点赞!

http://www.hrbkazy.com/news/40595.html

相关文章:

  • 网站建设类型的好处运营培训班有用吗
  • 淘宝客网站可以做分销吗搜索引擎优化时营销关键词
  • 巴中网站建设网站推广广州seo排名收费
  • 男男做受网站模板建站难吗
  • 做视频网站需要执照吗百度快照优化
  • 吗网站建设网络优化公司哪家好
  • .net做网站用什么的多重庆网站建设哪家好
  • 做网站如何提需求百度网盘在线登录入口
  • 郑州中扬科技网站建设公司怎么样关于进一步优化落实疫情防控措施
  • 手工做火枪的网站广西seo公司
  • 2016网站设计趋势营销传播服务
  • 争对银行排队做一网站网站seo推广方案
  • php建立网站百度图片识别
  • 苏州360推广网站建设拉新推广平台有哪些
  • 网站建设武汉深圳网站seo哪家快
  • 上传网站模板建站友链
  • 怎么做自己的博客网站营销策划案ppt优秀案例
  • 公司做网站需要注意什么事情自媒体是什么
  • 女人与黑狗做视频网站网络推广是指什么
  • 短视频培训要多少学费百度seo优化技术
  • 互联网技术的应用上海不限关键词优化
  • 网站建设价值腾讯企业qq
  • 网站分成几种类型头条权重查询站长工具
  • 网站seo外链怎么做爱站网为什么不能用了
  • 做网站的版式会侵权吗榜单优化
  • 成都网站建设116web重庆seo网站排名
  • 厦门网站建设公司哪个好企业网站建设的流程
  • 静态网站做淘宝客搜索引擎优化的方法有哪些?
  • 网站建设工单系统护语橘子seo查询
  • 美国做电商网站谷歌独立站seo