jasmine1

User版本开机异常/无法开机,如何抓取log?

0
阅读(107) 评论(0)

1.User版本开机异常/无法开机,如何抓取log

首先需要确认开机异常发生在哪个阶段。

1. 没有任何LOGO 显示;                在 LK 或者以前就出现异常,此时直接拉出uart 抓取uart log 即可。 因默认uart log, 到进入kernel 后才关闭,所以case 1, 只需要直接拉      出uart, 接入即可抓到LOG。

2. 只显示第一个LOGO:        

     可能卡在LK 或者kenrel 启动过程中,此时需要拉出uart ,并且打开kernel 的uart log.

     参考[FAQ: 如何在User版本开启串口(Uart),开启输入控制台,抓取上层Log].

3. 显示第二个Loading LOGO:  

    卡在init 进程以后,到开机动画之前,此时需要拉出uart, 并且抓取android 上层main log.

4. 进入MTK系统开机动画及以后:       

   卡在android 上层启动过程中,此时需要抓取android 上层main log(必要),以及uart log(不是必须). 针对Case 3, 4, 可以按照下面的流程 执行:

  (1).  

  (1.1).如果是JB 4.1 以及以后版本,直接修改函数should_drop_privileges() 函数, 清空这个函数,直接返回 0 即可。返回0 即开启root 权   限。

        static init should_drop_privileges(){

            #ifndef ALLOW_ADBD_ROOT

                return 0; //mtk71029 Update for release root role.

            #else

                ……….


2.快速判断是否是camera原因引起的启动失败问题

[DESCRIPTION]

有些开机启动失败问题,发现是因为Mediaserver重启或其他错误,查看log有camera方面的error, 但

不确定是否是cameradriver引起的.现提供如下一种排查方法:

[SOLUTION]

在/vendor/mediatek/proprietary/hardware/mtkcam/drv/src/sensor/$PLATFORM$/imgsensor_drv.cpp

搜索MINT32 ImgSensorDrv::impSearchSensor(pfExIdChk pExIdChkCbf)

函数中添加如下这行.

这样的话开机过程bypass了kernel层camera 相关的操作.返回给上层的结果就是没有配置任何的camera了.

这样的话就排查camera方面底层的error,正常情况就不会有camera kernel相关error log.若还有重启问题, 就可以往其他方向排查.