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指令后需要等一下,等屏开启完成后才能进行后续操作(发送数据)。

      

 

### RK3568 MIPI 显示屏配置方法及驱动支持 #### 设备树修改 对于RK3568芯片与MIPI显示屏的连接,设备树(Device Tree)的正确配置至关重要。当完成设备树的相关节点定义并编译后,在启动Linux操作系统时,如果一切正常,屏幕应该能够点亮并显示图像[^1]。 ```dts &lcdc { status = "okay"; port@0 { reg = <0>; lcdc_out_mipi: endpoint { remote-endpoint = <&mipi_in_lcd>; }; }; }; &mipi_dsi { status = "okay"; mipi_in_lcd: endpoint { remote-endpoint = <&lcdc_out_mipi>; data-lanes = <2>; /* 或者其他数量 */ hs-mode; lane-bw-kbps = /bits/ 32 <LANE_BW_KBPS>; }; panel: panel { compatible = "your-panel-compatible-string"; // 替换成实际面板型号对应的字符串 enable-gpios = <&gpio GPIO_NUMBER_ACTIVE_HIGH>; reset-gpios = <&gpio GPIO_NUMBER_ACTIVE_LOW>; backlight = <&backlight_pwm>; power-supply = <&vcc_panel_supply>; // 屏幕分辨率和其他初始化参数... }; }; ``` 这段DTSI代码展示了如何通过指定`compatible`属性来匹配特定类型的显示器,并设置了必要的GPIO控制引脚用于使能(enable)和重置(reset),以及背光调节(backlight control)[^2]。 #### 硬件检查要点 若在上述操作之后仍然无法看到任何画面,则需进一步排查物理层面上可能存在的问题: - 使用示波器检测`enable-gpio`, `reset-gpio` 和PWM信号的状态是否符合预期; - 排查LCD模块到主板之间的柔性扁平电缆(FPC)是否存在接触良的情况;因为这类接口非常敏感于机械应力的影响,轻微弯曲都可能导致断路或短路现象发生。 #### 初始化参数准确性 值得注意的是,在编写或调整针对具体型号液晶屏的支持时,务必仔细核对其官方技术文档中的各项电气特性指标,尤其是那些涉及电源电压等级、时序关系等方面的数据表项。哪怕是一个看似微足道的变化也可能造成整个系统的稳定甚至完全失效。
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值