MTK 开机黑屏很长时间

MT6735平台,可以开机,但是黑屏很长时间才看到开机图片。

查看串口LOG发现手机是正常运行的,也就是说LCM驱动没有异常,黑屏阶段也没有什么错误报出。

在MTK的FAQ上找到如下:

[DESCRIPTION]

本FAQ只讨论开机过程中黑屏,不讨论花屏(可以参考刷)。只讨论L/M版本(之前的KK/JB版本可以作为参考)。

首先要看一下是否IPO开机,即在setting-->辅助功能-->不勾选“fast boot“,如果不黑屏,说明是因为ipo这个过程中的问题,那么问题需要看看这个动画,可以找一下ipo动画的owner。

如果不勾选“fast boot“出现黑屏,那么就是我们现在要讨论的问题。定位问题前一定要搞清楚黑屏发生的时间段,因为开机过程中,会有lk logo,kernel logo,bootanimation,这三个画面里面发生黑屏,解决办法不一样。

如下这张图,是ENG版本的开机logo,说明了开机过程中的logo显示。

查看问题,一定要使用ENG版本,因为ENG版本开机的时候,左下角有一行”normal boot“字样,据此我们可以知道黑屏发生在哪个地方。最好使用不同的logo资源,有些客户把lk logo和kernel logo做成一样,bootanimation的前几张图片也是做成一样,不便于区分,这样容易判断出错。

如下解释:

(阶段1)、带有”normal boot“的lk logo,会在lk阶段显示。显示时间一般1s左右。

(阶段2)、启动到kernel的前7s左右,显示的是带”normal boot“字样的lk logo。(这里L/M版本和KK/JB版本很不同,不在此处细说)

(阶段3)、之后显示kernel logo的时间段很短,一般只有2s左右.

(阶段4)、显示bootanimation动画。

(1)如果怀疑kernel log黑屏,可以单独运行一下kernel log应用,正常情况下会显示kernel logo,如果有黑屏,那么就是他造成的。

adb shell

cd system/bin

boot_logo_updater

(2)单独删除kernel logo,可以看看是否不黑屏。如果不黑屏,那么可能是因为加载kernel logo的时候,底层向OVL刷进去了异常的黑屏数据或者异常格式的数据等。

adb remount

adb shell

cd system/bin

rm -rf boot_logo_updater

(3)如果怀疑bootanimation黑屏,可以单独运行一下bootanimation应用,正常情况下会显示bootanimation动画,如果有黑屏,那么就是他造成的。

adb shell

cd system/bin

bootanimation

(4)单独删除bootanimation,看看还黑屏吗?不黑屏,那么问题在于bootanimation,下面会有

adb remount

adb shell

cd system/bin

rm -rf bootanimation

出现黑屏问题,请先使用mtk原生的版本和原生的logo资源,看看是否有问题,如果原声的没有问题,那么可能是客户替换的logo资源和客制化问题,需要注意如下几个资源检查:

1、logo.bin的大小限制在4M内

2、lk logo和kernel logo图片是RGB888格式

3、bootanimation图片是png格式

如果以上都check OK,可以参看如下的方式定位

[SOLUTION]

一、如果是(阶段1)黑屏,即lk logo没有显示出来,那么可能是logo资源异常,或者底层没有刷出来,需要抓uart log查看,可以打log跟踪platform.c文件里面的platform_init()函数。

二、如果是(阶段1)和(阶段2)之间黑屏,可能是刷屏的问题,如果有异常,从uart log里面,应该可以看到display error,比如vdo mode屏,这时候等VM Done timeout等。

三、如果是(阶段2)中间黑屏,看uart log是否有display error/fault/timeout/fail.

四、如果是(阶段2)和(阶段3)之间黑屏,可能是因为加载的kernel logo异常,或者mtkfb pan display implementation的时候异常数据进入,通常此时log里面很难看到error,需要加log进去debug。

五、如果是(阶段3)黑屏,可以使用上面的adb命令来区分到底是kernel logo的问题还是bootanimation开始的问题。

注释:以上5个可能出现黑屏的阶段,都与driver层相关,在找对应owner前,请先排除logo资源格式客制化等影响。根据我们这么些年定位问题来总结,很大一部分客户是因为客制化,logo资源等造成的问题。如果log里面有error,属于数据流在engine处理的时候异常,较容易修正。如果log没有异常,那么可能是异常的数据格式或者异常的flow导致的,比较难定位。

六、如果是(阶段4)黑屏,运行bootanimation应用看看,如果黑屏,那么问题在于bootanimation。关于bootanimation黑屏的定位,如下有一个完整的总结,请先自行check一下:

1.关于黑屏问题首先需要确认是否开机动画包本身的问题:

(1)将出现黑屏手机内部的system/media/bootanimation.zip pull到没有黑屏问题的手机,check是否还有黑屏,

如果出现黑屏说明是开机动画包本身的问题,可以转给AF2分析,否则继续查找其他原因;

(2)将正常手机的 system/media/bootanimation.zip pull到目前有黑屏问题的手机,check是否依然黑屏。

如果没有黑屏说明是开机动画包本身的问题,可以转给AF2分析,否则继续查找其他原因。

2.测试去掉开机铃声后是否还会出现黑屏:

如果没有出现黑屏说明与mediaplayer初始化较慢有关,需要与audio 的owner确认进一步的原因。否则继续查找其他原因。

具体可参考[FAQ09563]开机过程kernel logo到开机动画黑屏时间过长。

3.在开机动画前出现一帧闪黑屏可能与Google default 默认的clear screen操作有关,需要在BootAnimation.cpp文件中去掉相关清屏的code。

具体可参考[FAQ14488]kernel logo到开机动画之间闪现黑屏。

[FAQ17969]开机过程kernel logo到开机动画之间黑屏(总)

七、另外,对于6580/6735 M0.MP1版本,出现kernel logo后,bootanimation前的黑屏问题,请申请patch ALPS02561201。

还有这个:

[DESCRIPTION]

开机过程kernel logo到开机动画之间黑屏

[SOLUTION]

在开机过程,如果将bootanimation.zip的图片换成非黑色背景,发现从kernel logo到bootanimation之间会黑屏一下或者黑屏时间过长,这类问题的原因有可能是和Display相关,也有可能和Bootup流程相关。遇到这种问题,请按照如下步骤进行初步分析:

1. 确认哪个过程黑屏:

uartlog和mobilelog确认是lk logo, kernel logo, bootAnimation哪个过程黑屏。如果lk logo, kernel logo, bootAnimation第一张图片相同,先将lk logo, kernel logo, bootAnimation第一张图片分别替换成不同的图片。

2. 确认是否是动画包问题:

交叉测试,排除动画包bootanimation.zip的问题

3. 查看bootanimation进程:

3.1去掉开机铃声system/media/bootaudio.mp3,如果黑屏依然存在

请先在PMS申请patch:ALPS02561201, 针对M版本6580/6735

请先参考以下FAQ:

[FAQ14247][Denali系列]开机动画前黑屏相关的issues

[FAQ14488] kernel logo到开机动画之间闪现黑屏(L)

如果问题依然无法解决,请提交eService进一步分析解决。提交eService时,请参照以下FAQ抓取黑屏layer信息。

[FAQ05755]如何定位花屏和界面错乱等绘制异常的问题?

3.2 去掉开机铃声system/media/bootaudio.mp3后,从Kernel Logo到动画是没有黑屏:

基本可以肯定,黑屏是由于mediaplayer初始化耗时导致。

可以进行如下测试:

(1)如果手机支持IPO(快速开关机),可以查看下IPO开机时是否还有黑屏。如果没有黑屏,进一步可以推论出:黑屏与mediaplayer初始化耗时有关。

(2)如果手机不支持IPO,可以用adb命令当地运行bootanimation bin档测试:adb shell system/bin/bootanimation。结论同(1)。

请先参照相关FAQ:

[FAQ09563] 开机过程kernel logo到开机动画黑屏时间过长。

[FAQ17968] new Mediaplayer耗时导致开机过程中kernel logo到开机动画之间黑屏

如果问题依然无法解决,请提交eService进一步分析解决。

所以,我做了以下尝试:

1、用ENG版本开机,没有看到”normal boot“字样;

2、删除bootaudio.mp3,依然黑屏;

3、删除bootanimation.zip,开机图画变成了android,依然黑屏;

4、确认图片格式、分辨率等都没有问题;

推测和LCM是没有关系的,怀疑是LK和Kernel阶段LCM背光没有亮。所以配置lk目录下cust_leds.c文件,配置backlight。

问题解决。

时间: 2024-08-12 17:37:35

MTK 开机黑屏很长时间的相关文章

Win8.1开机黑屏一段时间才能登录

最近发现开机后有一段时间黑屏过后才能进人登录界面,并且时间越来越长,网上查询了很多方法都没有效果,只能自己找了. 网上有一种方法提到用msconfig诊断判断或者安全启动来查看是否有黑屏,于是试了一下—没有.猜测跟启动项有关,在服务里面一组组实验来判断开机时间. 通过无数次重启,排除影响相对较小的服务,发现两个服务影响很大: Network location awareness: 识别计算机已连接的网络,收集和存储这些网络的属性,并在更改这些属性时通知应用程序.这个服务是列举现有的网络,展示目前

win10开机黑屏一段时间bug修复

新建一个txt文本,复制下面内容进去,在修改文件名后缀为.reg然后双击添加到注册表即可 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}\0000] "EnableULPS"=dword:00000000 [HKEY_LOCAL_MACHINE\SYSTEM\ControlS

Win10正式版开机慢怎么办 开机黑屏时间长怎么办

升级Win10正式版后开机速度慢.黑屏时间长怎么解决呢?其实我重要是由Win10正式版所提供的“快速启动”功能与电脑显卡驱动.电源管理驱动不兼容所造成的.下面就与大家分享一下针对Win10正式版开机速度慢.黑屏等待时间长的具体解决办法. 方法/步骤 1 首先需要说明一点,对于Win10正式版开机等待时间长的问题,通常只发生在通过“升级”方式更新的Win10正式版系统中.而对于采用“全新”方式安装 的Win10正式版系统中则不会出现此类故障.   接下来就与大家分享一下Win10正式版系统开机速度

Mac开机黑屏解决办法

开机黑屏问题 *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } a { color: #4183C4; } a.absent { color: #cc0000; } a.anchor { display: block; padding-left: 30px; margin-left: -30px; cursor: pointer; position: a

Ubuntu开机黑屏解决办法

联想笔记本通过虚拟机安装Ubuntu12.04后,开机黑屏.这个问题和NVIDIA显卡有关.网上有人提到更改/etc/default/grub文件,可是我通过root身份也无法很好地修改该文件,遂放弃. 最终解决方案: sudo apt-get purge nvidia* sudo apt-get install nvidia-current-updates-dev

电脑开机黑屏只有光标在闪怎么办

    电脑开机黑屏,只有一个光标在不停地闪,不管你等多少个时辰都是那样,直到让你崩溃.你是不是经历过这样的情况,我想很多喜欢在电脑上折腾的人都会遇到过,但是解决的方法却是不一样,有的重装,有的拆机重接,有的甚至怀疑是硬盘毛病,直接换了一个硬盘.现在我就把这个问题的一些解决方法说一说. 工具/原料 装有windows系统的电脑 方法/步骤 1 当你的电脑出现这样的情况之后,千万不要因为着急而盲目地操作,因为你的盲目操作,有可能会使系统彻底崩溃,完全没有挽回的余地了.所以,首先要冷静地想一想,之前

如何查看Win10开机运行了多长时间 - Windows10.Pro

原文:如何查看Win10开机运行了多长时间 - Windows10.Pro 方法一:使用Windows PowerShell命令查看 以管理员身份运行Windows PowerShell,在打开的“管理员: Windows PowerShell”窗口中输入并回车运行以下命令: (get-date) - (gcim Win32_OperatingSystem).LastBootUpTime 在返回的查询结果中即详细地显示了Windows10本次开机后已经运行的时间.令人惊讶的是,这个时间可以精确到

为什么drop table的时候要在checking permissions花很长时间?

昨天,我drop一个表的时候在checking permissions花了20s+,这个时间花在哪里了呢?经常查找发现我的配置文件innodb_file_per_table=1的,innodb需要遍历LRU链表,并且丢弃属于这个表的表空间里面的页.如果innodb buffer pool很大的话,需要花费很长时间,并且当执行这个动作的时候table_cache的锁是不能被其他query语句持有的. 参考资料: https://www.percona.com/blog/2011/02/03/per

Springmvc+Hibernate在Eclipse启动Tomcat需要很长时间的解决方法

最近在学习SpringMvc开发,有一个提问困扰了很久,就是在Eclipse启动Tomcat需要很长时间,大概要1分多钟. 启动日志: 九月 08, 2016 8:59:01 下午 org.apache.catalina.startup.VersionLoggerListener log 信息: Server version: Apache Tomcat/8.0.36 九月 08, 2016 8:59:01 下午 org.apache.catalina.startup.VersionLogger