6.3.10. 常见问题
6.3.10.1. 内核无法成功启动
显示模块无法申请到足够大的内存作为framebuffer。
显示模块申请的buffer来源于CMA机制预留的内存,如果CMA预留内存不足,可能会导致内核启动失败。
CMA预留内存设置可参考 CMA设置
6.3.10.2. 设备文件/dev/fb0缺失
显示模块驱动初始化失败。可通过debugfs查看component框架下显示引擎,显示接口,panel的 bind情况。参考 component调试
bind失败的通常存在如下问题:
panel 驱动选择出错。
参考 panel menuconfig 选择正确的 panel 驱动
DTS 中port属性配置不符合预期。
RGB/LVDS/DSI 三个显示接口必须三选一,确保 dts 有且仅有一条正确的数据通路。
DTS中缺少某些必须参数。
DTS配置不正确可能会导致整个bind过程中断。显示各模块的dts配置详情
6.3.10.3. 调屏常见问题
屏幕无法点亮会涉及很多因素,主要排除的地方有三处:DTS配置、内核编译配置、DE&DI寄存器设置。这里提供一个debug思路。
启动debug开关,检查kernel启动时打印到控制台的信息,检查驱动是否报error,根据error解决问题
kernel中是否生成设备结点/dev/fb0,如果没有,按/dev/fb0设备文件缺失思路进行检查
6.3.10.3.1. PRGB接口屏
6.3.10.3.1.1. 现象一:黑屏
检查背光是否已亮
排除1后确定屏规格书是SYNC模式还是DE模式,检查硬件电路相关控制信号是否按照屏规格书要求完成上下拉
排除1、2后,测量pixelclk是否符合屏规格要求,pixelclk计算公式vactive*hactive*60/(0.8),其中系数60为帧率,系数0.8为消隐区系数
6.3.10.3.1.2. 现象二:花屏
调整pixelclk频率
调整pixelclk相位
调整消隐区参数,主要是行方向消隐区
6.3.10.3.1.3. 现象三:起始位置错误
调整pixelclk频率
调整pixelclk相位
调整消隐区参数,主要是行方向消隐区
6.3.10.3.1.4. 现象四:闪烁
增大pixelclk频率,提高帧率
6.3.10.3.2. LVDS接口屏
6.3.10.3.2.1. 现象一:黑屏
检查背光是否已亮
排除1后,检查LVDS通道是否连接正确,检查硬件电路相关控制信号是否按照屏规格书要求完成上下拉,检查屏规格书是VESA模式还是JEIDA模式
排除1、2后,测量pixelclk是否符合屏规格要求,pixelclk计算公式vactive*hactive*60/(0.8),其中系数60为帧率,系数0.8为消隐区系数;LVDS接口中有一对时钟差分信号CK,若为单通道,则实测pixelclk=7ck;若为双通道,则实测pixelclk=3.5ck;
6.3.10.3.2.2. 现象二:花屏
调整pixelclk频率
调整消隐区参数,主要是行方向消隐区
6.3.10.3.2.3. 现象三:起始位置错误
调整pixelclk频率
调整消隐区参数,主要是行方向消隐区
6.3.10.3.2.4. 现象四:闪烁
增大pixelclk频率,提高帧率
6.3.10.3.3. DSI接口屏
6.3.10.3.3.1. 现象一:黑屏
检查背光是否已亮
排除1后,检查硬件电路相关控制信号是否按照屏规格书要求完成上下拉;检查与屏的连接是否成功,通常使用读屏驱动ID检查;检查初始化流程是否正确,检查屏规格书是Commad模式还是Video模式
排除1、2后,测量pixelclk是否符合屏规格要求,pixelclk计算公式vactive*hactive*60/(0.8),其中系数60为帧率,系数0.8为消隐区系数
6.3.10.3.3.2. 现象二:花屏
检查屏数据格式,检查数据lane数量
调整pixelclk频率
调整消隐区参数,主要是行方向消隐区
6.3.10.3.3.3. 现象三:起始位置错误
调整pixelclk频率
调整消隐区参数,主要是行方向消隐区
6.3.10.3.3.4. 现象四:闪烁
增大pixelclk频率,提高帧率
6.3.10.3.4. SRGB接口屏
6.3.10.3.4.1. 现象一:黑屏
检查背光是否已亮
排除1后,检查硬件电路相关控制信号是否按照屏规格书要求完成上下拉;检查与屏的连接是否成功,通常使用读屏驱动ID检查;检查初始化流程是否正确
排除1、2后,测量pixelclk是否符合屏规格要求,pixelclk计算公式vactive*hactive*60/(0.8),其中系数60为帧率,系数0.8为消隐区系数
6.3.10.3.4.2. 现象二:花屏
检查屏数据格式,格式为RGB还是BGR
调整pixelclk频率
调整消隐区参数,主要是行方向消隐区
6.3.10.3.4.3. 现象三:起始位置错误
调整pixelclk频率
调整消隐区参数,主要是行方向消隐区
6.3.10.3.4.4. 现象四:闪烁
增大pixelclk频率,提高帧率
6.3.10.3.5. I8080&SPI接口屏
6.3.10.3.5.1. 现象一:黑屏
检查背光是否已亮
排除1后,检查硬件电路相关控制信号是否按照屏规格书要求完成上下拉;检查与屏的连接是否成功,通常使用读屏驱动ID检查;检查初始化流程是否正确
排除1、2后,测量pixelclk是否符合屏规格要求,pixelclk计算公式vactive*hactive*60/(0.8),其中系数60为帧率,系数0.8为消隐区系数
6.3.10.3.5.2. 现象二:花屏
检查屏数据格式
调整pixelclk频率
调整消隐区参数,主要是行方向消隐区
6.3.10.3.5.3. 现象三:起始位置错误
调整pixelclk频率
调整消隐区参数,主要是行方向消隐区
6.3.10.3.5.4. 现象四:闪烁
增大pixelclk频率,提高帧率