MT6755 使用R63350 IC 出现唤醒概率性闪白,并导致ESD FAIL
现象描述.
手机自动灭屏后按power键或home 键点亮屏幕,概率性上方有白色的一道,还会闪两三下屏.
使用的LCM IC是:r63350, (FHD VDO)屏,附件为mtklog看看是什么原因?
dear custom:
若關閉 ESD check 對問題現象有改善
是否可以協助把 frontporch 加大測試一下
謝謝
1.
加大 vertical_frontporch
params->dsi.vertical_frontporch = 24;
hi mtk:
单独修改 params->dsi.vertical_frontporch = 24; 验证有复现到这个现象.
关闭esd
check机制,目前还没测试到闪屏现象,但不太确定后面会不会出现。
这边FAE有如下疑问:因为唤醒时出现的异常, vendor有2点怀疑
1.在唤醒屏还没有正常显示图像(正常工作), esd check会不会就提前去检测屏状态了?
2.lcm_resume多久,esd
check才会有检测动作 ? 能不能再延后一点开启esd 检测线程。
dear custom:
就我們驗證其他 vendor IC 經驗
一般其他 vendor 都是提供另外其他的寄存器當作 ESD reg check
只有
RSP 只能讀 0x0A
一般 0x0A reg 都只在第一次開機確認 panel 有沒接上來使用
且就經驗了解 RSP
DDIC 0x0A 所需穩定的時間特別久
若 RSP 堅持只能讀 0x0A 當作 ESD read reg check 的話
只能透過 delay 來等待 RSP DDIC reg 0x0A 穩定
但其他 vendor DDIC
並不會有這樣的限制.....
供貴司作參考
Dear customer
內部另外討論了一個延遲 ESD check 的實驗
麻煩先把之前建議的代碼修改
(resume/suspend 函式 "在下完亮屏指令之後" 多加些 delay) 先屏蔽掉
在 disp_recovery.c 內之
primary_display_check_recovery_worker_kthread(void *data) 函式
新增如下延遲代碼試試看
謝謝
/* 1. esd check & recovery */
if
(esd_check_enable) {
i = 0;/*repeat*/
do {
mdeay(100); //add
by MTK
ret = primary_display_esd_check();
if (ret == 1) {
DISPERR("[ESD]esd check fail, will do esd recovery. try=%d\n", i);
primary_display_esd_recovery();
recovery_done = 1;
} else
break;
} while (++i < esd_try_cnt);
闪白屏这块可以让vendor查一下根本原因.
最终将0x11移到代码最前面,解决了此问题.这种方法有可能导致模组OTP vcom设定有可能被覆盖。
MT6755 使用R63350 IC 出现唤醒概率性闪白,并导致ESD FAIL的更多相关文章
- 解Bug之路-记一次调用外网服务概率性失败问题的排查
前言 和外部联调一直是令人困扰的问题,尤其是一些基础环境配置导致的问题.笔者在一次偶然情况下解决了一个调用外网服务概率性失败的问题.在此将排查过程发出来,希望读者遇到此问题的时候,能够知道如何入手. ...
- php实现概率性随机抽奖代码
1.初始数据: 权重越大,抽取的几率越高 [奖品1, 权重 5], [ 奖品2, 权重6], [ 奖品3, 权重 7], [ 奖品4, 权重2] 2.处理步骤: 1)N = 5 + 6 + 7 + 2 ...
- (转)Unity导出Android在高通骁龙800以上CPU概率性崩溃解决方法研究
Android上的奇葩问题真的是太多了,开始测试反馈说游戏在某些Android手机上随机crash,后来经过详细的测试发现随机闪退的手机都是搭载了高通骁龙800以上的CPU.然后连上真机当crash的 ...
- SoundPool概率性无声问题
public class SoundManager { private static SoundManager instance; private SoundPool mSoundPool; priv ...
- WINCE6.0+ILI9806E休眠唤醒显示异常问题
我们的系统WINCE6.0,它支持睡眠和唤醒,目的是想在不使用的时候让设备进入睡眠状态,降低功耗,我们遇到的问题就是设备正常启动后正常显示,但睡眠然后唤醒后要么显示白屏要么是条纹状白屏,如下图: 图1 ...
- 使用 Infer.NET 进行概率编程
本文介绍了如何使用 Infer.NET 进行概率性编程. 概率性编程是一种将自定义模型表示为计算机程序的机器学习方法. 借助它可以在模型中包含专业知识,使机器学习系统更易理解. 它还支持在线推断,即在 ...
- 利用等概率Rand5产生等概率Rand3(转)
问题本身很明确,但不知道起个什么题目好,姑且先这么说吧. 问题描述:现在有一个叫做Rand5的函数,可以生成等概率的[0, 5)范围内的随机整数,要求利用此函数写一个Rand3函数(除此之外,不能再使 ...
- 磁条卡,IC卡,ID卡,信用卡芯片卡,信用卡磁条卡 等等的区别
1.条码卡:该卡卡面上有一串条码,通过扫描枪或者相应的条码读卡器读出该条码卡的卡号.根据条码的不同又分为39码等其它码.条码卡仅仅是一个编号,不存蓄其它内容.特点:价格便宜类似磁卡. 2.磁条卡:类似 ...
- [NOIP2016]换教室(概率期望$DP$)
其实吧我老早就把这题切了--因为说实话,这道题确实不难啊--李云龙:比他娘的状压DP简单多了 今天我翻以前在Luogu上写的题解时,突然发现放错代码了,然后被一堆人\(hack\)--蓝瘦啊\(ORZ ...
随机推荐
- 【转】数据库CRUD操作
数据库CRUD操作 一.删除表 drop table 表名称 二.修改表 alter table 表名称 add 列名 数据类型 (add表示添加一列) alter table 表名 ...
- Selenium私房菜系列1 -- Selenium简介
一.Selenium是什么? Selenium是ThroughtWorks公司一个强大的开源Web功能测试工具系列,本系列现在主要包括以下4款: 1.Selenium Core:支持DHTML的测试案 ...
- echarts简单用法快速上手
1.html结构 简单说就是一个标签一个图表:2.初始化:var myEcharts = echarts.init(document.getElementById("xxx")): ...
- Two-Phase Commit (2PC)
两阶段提交模式像极了比赛发令:“预备,开始!”
- [Redis] 基于redis的分布式锁
前言分布式锁一般有三种实现方式:1. 数据库乐观锁:2. 基于Redis的分布式锁:3. 基于ZooKeeper的分布式锁.本篇博客将介绍第二种方式,基于Redis实现分布式锁. 可靠性首先,为了确保 ...
- JS concat() 方法
[数组元素的合并] 一. concat() 方法 concat() 方法用于连接两个或多个数组. 返回一个新的数组.该数组是通过把所有 arrayX 参数添加到 arrayObject 中生成的.如果 ...
- CPP-基础:inline
背景: 在C&C++中 一.inline关键字用来定义一个类的内联函数,引入它的主要原因是用它替代C中表达式形式的宏定义. 表达式形式的宏定义一例: #define ExpressionNam ...
- ERROR: HHH000091: Expected type: java.sql.Timestamp, actual value: java.lang.Integer
在将MySql的数据对应到Java的实体类的时候, 遇到了错误 关键点: Hibernate从mysql数据库查出来的Timestamp类型的数据, 会被Hibernate(或者是数据库连接池Drui ...
- 硬盘写入 iso
https://www.jb51.net/softjc/508796.html WinImage 正确操作是要有两个or以上-硬盘. 这样才能写入你要装的操作系统 测试或者安装
- 全局/局部变量、宏、const、static、extern
#pragma mark--全局变量和局部变量 根据变量的作用域,变量可以分为: 一.全局变量 1> 定义:在函数外面定义的变量2> 作用域:从定义变量的那一行开始,一直到文件结尾(能被后 ...