RK3568 MIPI 开机启动不显示,待机唤醒后又有显示的一种异常情况

在RK3568 Androd12.0 上适配一款mipi,出现一种现象:开机启动没有显示,待机后再唤醒就有显示。

问题排查流程:

        1. 适应性修改上电时序(delay-ms)及示波器测试波形,发现修改是有效的,但问题没有解决。提供日志及参数给原厂协助分析,并无实质性进展。

        2.使用另外一款mipi测试对比,这款屏显示又是正常的,对比内核日志,除分辨率的差异,其他并无区别。

        3.跟屏的供应商要屏的规格书----之前只提供了一个屏参文件和结构图文件(这是大忌,一定要规格书,里面有模式、寄存器、时序、通信等相关内容的详细信息

        4.对照规格书,尝试修改屏参里面的寄存器参数,发现是有变化的(待机后唤醒显示正常说明提供的参数应该是没有问题)。

       5.从启动流程上分析问题:开启启动是现在加载uboot-logo,再加载kernal-logo,因此要从uboot里面开始查。

       6.uboot 显示参数获取及加载代码目录:uboot/video/drm/,加载dts,prepare、enable,init等流程。走读代码并没有发现什么问题,所以在执行写寄存器的方法增加打印确认寄存器及其参数与dts中是否一致(rockchip_panel_send_dsi_cmds)。

       7.加了打印,刷机,开机启动就显示正常了。

       8.进一步分析:加打印相当于加延迟处理,而且dts中的寄存器参数项是有延迟数据的,问题应该是在dts mipi 寄存器参数中。

       9.参照屏的规格书,逐一对寄存器的功能描述、值以及注意事项。最终定位问题是在最后一个寄存器没有休眠,0x29(Display On).

 最终分析:发送完 Display On指令后需要等一下,等屏开启完成后才能进行后续操作(发送数据)。

      

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值