我一个屏幕没在uboot配置只在内核配置,发现进入内核阶段时,Logo可以正常显示,LVGL和彩条也能用,然后我将内核的lcd部分的dts复制到了uboot的,然后驱动也改了结构体,uboot的menuconfig也选择了,编译能过,也看见我的驱动被编译进了,但是启动时在uboot阶段还是不亮,还是只有内核阶段亮,不知道问题出在哪里还是这个版本的uboot不支持dsi,我的屏幕背光常亮,求助各位大佬!!!
离线
U-Boot 2018.07 本身不是完全不能做 DSI,但全志平台上能不能亮,主要看你这份 BSP 的 U-Boot 显示驱动链路有没有把 DSI 部分移植完整。
只把内核 dts 的 lcd 节点复制到 U-Boot 通常不够,建议重点查:
U-Boot 阶段是否真的调用到了 lcd/panel 的 init 函数,可以先加打印确认;
DSI host、TCON、clock/reset、GPIO、power regulator、panel init command 这些是否都在 U-Boot 里初始化了;
背光常亮只能说明背光 GPIO/电源开了,不代表 DSI 已经出图;
内核能亮,说明硬件和屏参大概率没问题,可以对照内核启动日志,把 DSI 初始化顺序、lane 数、format、timing、panel init code 搬到 U-Boot 侧;
如果 U-Boot 里只有 RGB/LVDS 路径,没有 DSI host 驱动,那 menuconfig 选中 panel 也不会亮。
我建议先在 U-Boot 的 display init 入口、panel probe/init、dsi enable 这些位置加 log,确认卡在哪一层。
离线