第一种情况:

进入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 显示异常定位分析方法的更多相关文章

  1. Linux内核crash/Oops异常定位分析方法

    在内核开发的过程中,经常会碰到内核崩溃,比如空指针异常,内存访问越界.通常我们只能靠崩溃之后打印出的异常调用栈信息来定位crash的位置和原因.总结下分析的方法和步骤. 通常oops发生之后,会在串口 ...

  2. LCD显示异常分析——撕裂(tear effect)【转】

    转自:LCD显示异常分析--撕裂(tear effect) 概述 在上一篇<LCD显示异常分析--开机闪现花屏>中,我们一起分析了开机花屏的问题,在这一篇中,我将对LCD撕裂(tear e ...

  3. LCD显示异常分析——开机闪现花屏【转】

    转自LCD显示异常分析--开机闪现花屏 最近在工作中,有同事遇到LCD开机瞬间会闪现雪花屏的问题,而这类问题都有个共同点,那就是都发生在带GRAM的屏上,同样的问题,在休眠唤醒时也会出现. 其实这类问 ...

  4. long型长整数字在前端页面显示异常及其解决方法

    文章目录 1.引子 2.解决问题 (1)初试EL表达式取long型数值 (2)再探EL表达式取字符串格式long型数值 (3)最后一试---给EL表达式加引号 3.总结 1.引子 在做项目中,发现了一 ...

  5. CPU利用率异常的分析思路和方法交流探讨

    CPU利用率异常的分析思路和方法交流探讨在生产运行当中,经常会遇到CPU利用率异常或者不符合预期的情况,此时,往往暗示着系统性能问题.那么究竟是核心应用的问题?是监控工具的问题?还是系统.硬件.网络层 ...

  6. OutOfMemoryError/OOM/内存溢出异常实例分析--虚拟机栈和本地方法栈溢出

    关于虚拟机栈和本地方法栈,在JVM规范中描述了两种异常: 1.如果线程请求的栈深度大于JVM所允许的深度,将抛出StackOverflowError异常: 2.如果虚拟机在扩展栈时无法申请到足够的内存 ...

  7. u-boot支持LCD显示(基于TQ2440)【转】

    本文转载自:http://www.cnblogs.com/pengdonglin137/p/4633877.html u-boot支持LCD显示(基于TQ2440)   阅读目录(Content) 平 ...

  8. 蓝屏 Dump文件分析方法

    WinDbg使用有点麻烦,还要符号表什么的.试了下,感觉显示很乱,分析的也不够全面... 试试其他的吧!今天电脑蓝屏了,就使用其dump文件测试,如下: 1.首先,最详细的,要属Osr Online这 ...

  9. 关于FusionCharts图表宽度width的设置问题导致图表显示异常的解决办法

    关于FusionCharts图表宽度width的设置问题导致图表显示异常的解决办法 题设: 经常使用FusionCharts图表的朋友可能会遇到这个问题.就是在FusionCharts显示的时候有时候 ...

随机推荐

  1. 对I/O设备分配的一般策略是什么?

    策略是:独享分配.共享分配.虚拟分配 补充:I/O设备的分配算法 1.  先请求先服务 2.  优先级最高者优先

  2. C语言程序设计预备作业。

    1. 阅读邹欣老师的博客--师生关系,针对文中的几种师生关系谈谈你的看法,你期望的师生关系是什么样的? 答:我理想中的师生关系是Coach/Trainee(健身教练/健身学员)的关系.因为邹老师就如同 ...

  3. request.url 端口 错误

    今天遇到一个很奇怪的事情,用request.url.port来获取一个请求的端口,返回是80 ,很纳闷啊我的请求上面是http://www.XX.com:8088 啊,怎么会是80啊,太不可思议了! ...

  4. GrideSearchCV 优化算法参数

    很多机器学习算法有参数,比如 linear_model.LogisticRegression()中有参数C. sklearn中的GrideSearchCV可方便调参过程.如下: import nump ...

  5. Lucene——Field.Store(存储域选项)及Field.Index(索引选项)

    Field.Store.YES或者NO(存储域选项) 设置为YES表示或把这个域中的内容完全存储到文件中,方便进行文本的还原 设置为NO表示把这个域的内容不存储到文件中,但是可以被索引,此时内容无法完 ...

  6. python--ftp服务器(pyftpdlib)

    # -*- coding: utf-8 -*-# @Time : 2018/4/11 16:47# @Author : liuxiaobing# @File : test2.py# @Software ...

  7. 多表insert操作详解

    --1.无条件的多表insert all ; ; ; --没有条件,向多个目标表全量插入,必须有all insert all --不指定emp_1后面的列,也不指定values,那么emp_1中的所有 ...

  8. leetcode 之 Single Number II

    问题来源:Single Number II 问题描述:给定一个整数数组,除了一个整数出现一次之外,其余的每一个整数均出现三次,请找出这个出现一次的整数. 大家可能很熟悉另一个题目(Single Num ...

  9. Docker学习笔记1:CentOS7 下安装Docker

    本文内容摘自官网:https://docs.docker.com/engine/installation/linux/centos/#/create-a-docker-group 注:本文是介绍Lin ...

  10. Android逆向工程

    在Root前提下,我们可以使用Hooker方式绑定so库,通过逆向方式篡改数值,从而达到所谓破解目的.然而,目前无论是软件加固方式,或是数据处理能力后台化,还是客户端数据真实性验证,都有了一定积累和发 ...