mtk6739サーマルの変更

インターネット上に関連するブログが少なすぎて、それらの多くが転送されています。実際、Baiduは同じコンテンツを見つけました。難しいです

元のブログのアイデアのおかげで、関連するコンテンツを見つけることができるのは悪くありません。

              https://blog.csdn.net/stoic163/article/details/80611626

-------------------------------------------------- ----------------------------------

问题背景:
    我这有机器,灭屏休眠状态能充电,android唤醒状态,用充电器AC充电,有时不能充电。
                                     (表现为,充电电流为0,状态栏电池百分比下降,处于放电状态)



log:


[416:VSyncThread_0][name:primary_display&][DISP]use fake vsync: lcm_connect=0, has_vsync=1
[471:kworker/u8:5][name:mtk_cooler_bcct_v1&][Thermal/TC/bcct]chrlmt_set_limit c2436380 -1 0 0
[5277:kworker/u9:4][name:mtk_cooler_bcct_v1&][Thermal/TC/bcct]chrlmt_set_limit_handler -1 0
[5277:kworker/u9:4][name:mtk_charger&]charger_manager_set_input_current_limit: dev:mtk-cooler-bcct idx:0 en:-1
[5277:kworker/u9:4][name:mtk_switch_charging&]force:0 thermal:-1,50 pe4:-1,-1,0 setting:3200 0 type:4 usb_unlimited:0 usbif:0 usbsm:0 aicl:-1
[5277:kworker/u9:4][name:bq2560x_charger&][bq2560x]:bq2560x_update_bits: bq2560x bq2560x_update_bits 
[5277:kworker/u9:4][name:bq2560x_charger&][bq2560x]:bq2560x_set_ichg: bq2560x_set_ichg 0 
[5277:kworker/u9:4][name:bq2560x_charger&][bq2560x]:bq2560x_set_chargecurrent: bq2560x bq2560x_set_chargecurrent 
[5277:kworker/u9:4][name:bq2560x_charger&][bq2560x]:bq2560x_update_bits: bq2560x bq2560x_update_bits 
[5277:kworker/u9:4][name:mtk_charger&]charger_manager_set_charging_current_limit: dev:mtk-cooler-bcct idx:0 en:0
[5277:kworker/u9:4][name:mtk_switch_charging&]force:0 thermal:-1,0 pe4:-1,-1,0 setting:3200 0 type:4 usb_unlimited:0 usbif:0 usbsm:0 aicl:-1
[416:VSyncThread_0][name:primary_display&][DISP]use fake vsync: lcm_connect=0, has_vsync=1
[5277:kworker/u9:4][name:bq2560x_charger&][bq2560x]:bq2560x_update_bits: bq2560x bq2560x_update_bits 
[5277:kworker/u9:4][name:bq2560x_charger&][bq2560x]:bq2560x_set_ichg: bq2560x_set_ichg 0 
[5277:kworker/u9:4][name:bq2560x_charger&][bq2560x]:bq2560x_set_chargecurrent: bq2560x bq2560x_set_chargecurrent 
[5277:kworker/u9:4][name:bq2560x_charger&][bq2560x]:bq2560x_update_bits: bq2560x bq2560x_update_bits 
[5277:kworker/u9:4]qyc, chrlmt_bat_chr_curr_limit=0, forbid
[5277:kworker/u9:4][name:mtk_charger&][charger_manager_enable_high_voltage_charging] already set: 0 1
[249:charger_thread]mt6357_get_auxadc_value: 17 callbacks suppressed
[249:charger_thread][name:pmic_auxadc&][mt6357_get_auxadc_value] ch_idx = 2, channel = 3, bat_cur = -4186, reg_val = 0x5ee, adc_result = 667
[249:charger_thread][name:mtk_charger&]Vbat=3926,Ibat=-4318,I=107,VChr=5052,T=24,Soc=63:62,CT:4:4 hv:1 pd:0:0
[249:charger_thread][name:pmic_auxadc&][mt6357_get_auxadc_value] ch_idx = 2, channel = 3, bat_cur = -4070, reg_val = 0x5ed, adc_result = 666
[249:charger_thread][name:pmic_auxadc&][mt6357_get_auxadc_value] ch_idx = 1, channel = 2, reg_val = 0x4c2, adc_result = 535
[249:charger_thread][name:pmic_auxadc&][mt6357_get_auxadc_value] ch_idx = 1, channel = 2, reg_val = 0x4bf, adc_result = 533
[249:charger_thread][name:mtk_charger&]tmp:24 (jeita:0 sm:0 cv:0 en:0) (sm:1) en:1 c:0 s:0 ov:0 1 1
分析:

log关键词:
    Thermal/TC/bcct

    [name:mtk_switch_charging&]force:0 thermal:-1,50 pe4:-1,-1,0 setting:3200 0 type:4 
usb_unlimited:0 usbif:0 usbsm:0 aicl:-1

--------------------
上面force这条log很关键,
        force:   pdata->force_charging_current
        thermal: pdata->thermal_input_current_limit, pdata->thermal_charging_currrent_limit


------------
休眠和唤醒分别看这条log
    发现
        休眠时 thermal:-1, -1, 理解的意思就是充电电流无限制

        唤醒并且充电异常时 thermal:-1,3000, 然后thermal_charging_currrent_limit从3000一直下降到0
        
    这个log和上面那个灵感博客差不多,所以把问题原因定在mtk Thermal温控机制导致的,温度过高,
然后charger IC bq2560x把充电电流设置为0.

 高温によるものか確認してください。小さなファンを持ってボードを吹き飛ばすと、次のことがわかります。

 2番目の熱パラメータpdata-> thermal_charge_currrent_limitは、魔法のようにそれ自体でプリセット値まで上昇します。充電電流が大きくなり、再び電気が流れ込む可能性があります。

然后怎么解决温度升高的问题呢?

从硬件上解决就是处理散热问题,别发热这么大

从软件,怎么改善这个问题:

           1.直接关闭abcct        //这个不知道行不,没有thermal温度控制,实际不知道会不会出问题

           2.提高触发的这个温度

           3.依旧让它触发之后,但是设置减少到最小充电电流不为0,为一个小电流充电,后面板子热量下降,自己电流应该会涨回去


ソフトウェアが変更された場合は、mtk Thermal_config_toolを使用して、import android / device / mediatek / mt6739 /の下にあるthermal.confthermal.eng.confを開きます。

 (これら2つのファイルの内容は同じです)次に、mtktsAP通常の熱ポリシーabcct内の不規則な熱ポリシー変更します。

トリップポイントは温度である必要があります。変更されたエラーレポートの観点から、mtktsAP列の上から下へのトリップポイントは降順である必要があります。そうでない場合、エラーが生成されます。この場合、この値は最大値を超えることはできません。 。最大値は、不規則な熱ポリシーに対応する目標温度です。(これは私がそれをいじった方法です...それが正しいかどうかはわかりません)

 

改了之后,就是这样:

    thermal:-1, -1, 和休眠时log一样,应该没有触发thermal机制,我的充电器的电是充进去了,没出现之前的问题。

ここに書いてください、あなたは操作が偏っていることを理解するかもしれません。 

おすすめ

転載: blog.csdn.net/John_chaos/article/details/108706268