100ASK_v853-pro 开发板配置480x800mipi屏幕问题

按照例程配置好mipi屏且正确显示bootlogo后,用echo 8 > /sys/class/disp/disp/attr/colorbar 命令测试发现屏幕上边有白线并且屏幕有线在波动

参考链接:关于全志T113开发板接7寸LCD屏幕显示异常问题的解决方案

本人比较新手,想请问一下老师,像设备树里屏幕的timing这类参数应该看哪个数据手册的哪部分呢,这块mipi屏幕也是跟这块板子配套的

今天早些时候也碰到了这个问题。

抓了 framebuffer 和 DE,显示都正常,所以基本可以判断是硬件链路侧的问题。

可以先使用下面的命令查看显示状态:

cat "/sys/class/disp/disp/attr/sys" | sed -n '/lcd output/,+1p'

返回类似:

lcd output    backlight(255)    fps:47.1     480x800
err:780       skip:91           irq:109159   vsync:0    vsync_skip:0

过几秒后再次执行 cat,可以看到 err 会持续增加。

按照此时的配置,启动日志中显示的实际时钟频率为:

[    1.094105] [DISP] lcd_clk_config,line:702:
[    1.094106] disp 0, clk: pll(150000000),clk(150000000),dclk(25000000) dsi_rate(25000000)
[    1.094106] clk real:pll(288000000),clk(288000000),dclk(72000000) dsi_rate(150000000)

猜测原因可能是:

MIPI DSI 链路在约 240 Mbps/lane 时能够稳定工作,而在 264 Mbps/lane 及以上 时会开始失稳。

百问提供的 SDK 中,board.dtsuboot-board.dts 里的 lcd_dclk_freq 均被设置为 25

lcd_dclk_freq = <25>;

将其修改为:

lcd_dclk_freq = <20>;

修改后,屏幕显示恢复正常。

此时再次执行:

cat "/sys/class/disp/disp/attr/sys" | sed -n '/lcd output/,+1p'

返回:

lcd output    backlight(255)    fps:47.1     480x800
err:0         skip:91           irq:109159   vsync:0    vsync_skip:0

可以看到 err 已经变为 0,之后屏幕显示也一直正常。

希望还能对你有帮助

1 个赞