LCD 显示异常定位分析方法
第一種情況:
進入kernel或android 后,如果LCM圖像示異常,可以通過如下步驟來判斷問題出現在哪個層面.
step1:通過DMMS截圖,來判斷上面刷到LCM的數據是否有問題. 若DMMS獲取的圖片沒有問題,問題基本可以定位在LCM 驅動/模組,以及時序方面.
?
step2: 若step1中DMMS獲取的數據有問題,則需要抓取framebuffer數據進一步分析 adb shell cat /dev/graphics/fb0 > /data/fb.bin 然后將fb.bin通過adb push 出來,通過工具查看fb.bin step3: 若查看fb.bin的數據有問題,則問題一般出現在LCD control做overlay時出了問 題。若查看framebuffer數據沒有問題,則需下一步定位分析. step5: 這一步需要繼續抓取SF layerdump, 直接運行SF_layerdump.bat腳本. 若dump出來的圖片有問題,那應該是在畫layer數據時出現問題,需要分析單個app. 若surface data 沒有問題,那問題就需要定位在surfaceflinger模塊。
?
第二種情況:若 lk 啟動階段出現顯示異常, 比如手機開機logo界面顯示異常.
1).可以先將logo 圖片替換成簡單的左黑右白同等尺寸的圖片,如下圖:
?
分別測量正常顯示時,顯示異常時相關mipi時序圖.
正常顯示時D0P/N的waveform如下:
異常顯示時D0P/N的waveform如下:
??
?
從上面的waveform可知,異常時,系統送出的data有異常,從而導致顯示異常。需要查平臺端找具體原因。
?
2).發指令直接從IC端刷圖像到屏上,不用平臺輸出的圖像。同樣的操作,如果顯示問題不能復現,應該屬于平臺端數據顯示異常.
像novatek?nt35596從初使化reg 跑完后,不去發0x11,0x29指令。
發如下一些從IC 刷圖像指令:
{0xFF,1,{0x05}},
{REGFLAG_DELAY, 5, {}}
{0xEA,1,{0xFF}}
{0xEB,1,{0x27}}
{0xEC,1,{0x01}}
?
總結
以上是生活随笔為你收集整理的LCD 显示异常定位分析方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LCD 常用的客观效果指标和测试方法
- 下一篇: 射频全网通笔记(附全球频段划分及主要运营