新的项目,编译代码,烧写到主板后,主板能起来,但就是进入不了主界面(通过vysor同屏查看)。这是比较少见的,怀疑是编译代码时哪里弄错了,但再三检查也没发现问题,将固件烧写到其他项目的主板上能正常起来,那就不是代码的问题了。
先看内核log,init进程一直在启动camera服务,但到了600s都没启动成功。

查看死掉的进程
root@G480:/home/w# adb shell ps -AT|grep -e "D" -e "Z" -e "R"
USER PID TID PPID VSZ RSS WCHAN ADDR S CMD
root 69 69 2 0 0 mbox_send_thread 0 D mbox-send-threa
root 72 72 2 0 0 monitor_irqs_change 0 D irqs_change
root 232 232 2 0 0 0 0 R sugov:0
root 419 689 1 2424672 8708 poll_schedule_timeout 0 S SkDestroyListen
root 420 4678 1 5456024 177276 futex_wait_queue_me 0 S HeapT

本文详细分析了一起因i2c卡死导致系统无法进入主界面的故障,通过排查发现是由于i2c1上的外设未上电,导致i2c信号被拉低,进而使系统在初始化摄像头时卡死。通过屏蔽i2c1,系统恢复正常。对比mtk和qcom平台,发现其驱动中使用了超时机制避免此类问题。
最低0.47元/天 解锁文章
3628

被折叠的 条评论
为什么被折叠?



