MTK平台LCM打静电分析
說明:ESD就是靜電。打ESD就是打靜電。靜電這東西是瞬間電壓,特點就是瞬間電壓很高,達到10K左右,或更高。而電流是非常小的。
因我們的現在芯片都是半導體,半導體對外界電壓很敏感的。如果碰到高電壓,雖是極小的電流,一樣會出問題。這時出問題有的是直接損壞,還有的是暫時損壞,然后會在電壓正常時又恢復了。
2: lcm_esd_check和lcm_esd_recover就是針對這能自動恢復的時候。他是啟動了一個定時器,啟動了一個線程,在規定的時間內去讀一下IC的某一個寄存器。如果出現問題了。這個寄存器在受到外界電壓的影響就會亂掉,這時讀取后的與理論的值是不同的。
比對發現不同時,就會將LCD的初始化重寫一次,這樣就可以從花屏的狀態退出來,達到正常顯示。
[FAQ14251] 如何配置LCM ESD Check——讀寄存器方式
params->dsi.esd_check_enable = 1; //enable ESD check
params->dsi.customization_esd_check_enable = 1;
params->dsi.lcm_esd_check_table[0].cmd = 0x09;
params->dsi.lcm_esd_check_table[0].count = 1;
params->dsi.lcm_esd_check_table[0].para_list[0] = 0x80;
cmd:是你要讀的寄存器
count:是你要讀取的寄存器個數
para_list:是你要讀取的正確的返回值
如果讀到的返回值不是預設的值,顯示系統會做恢復處理:重新初始化(將LCD的初始化重寫一次)
FAQ13728 MT6735通過讀寄存器方式做ESD,客制化需求----多個返回值
打靜電問題分析:
1.未打靜電情況下,如果出現lcm esd 寄存器讀取值返回錯誤的問題,也請聯系屏廠解決。
2.打靜電時候,如果出現連續閃屏后無法自動恢復,按powerkey可以恢復(或者靜止手機一會,待電荷釋放后,按power可以正常亮屏),出現這種現象的原因是:連續recovery 5次LCM依然無法恢復正常,esd thread被停止。原因是由于LCM積累電荷太多導致。
3. 如果出現打靜電導致,系統hang住或死機,可以提交e-service,交由MTK處理。
4.在打靜電實驗中,會概率出現恢復緩慢的問題,本文介紹所花費時間的構成,以及優化建議
打靜電后概率出現LCM恢復緩慢的問題,主要耗費時間分解為
根據以上時間分解
在primary_display.c的primary_display_esd_check_worker_kthread函數中有設置msleep(2000);
- 對于Turnkey方案,alps/mediatek/platform/mt65xx/kernel/drivers/video/dsi_drv.c中
- 對于AOSP方案,alps/kernel/drivers/misc/mediatek/video/mt65xx/dsi_drv.c中
接口DSI_dcs_read_lcm_reg_v2,修改WAIT_TIMEOUT = HZ/2;
總結
以上是生活随笔為你收集整理的MTK平台LCM打静电分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 本科毕业生薪资最高的10个专业,看看你的
- 下一篇: 发明专利,实用新型,外观设计有什么区别