文章说明本合集分享的我当初入门嵌入式 BSP 调试时调试生中第一块板子的原始笔记。调试前见前文《LVDS全志 T527》本文记录全志 T527 平台 MIPI DSI 屏幕从硬件、设备树到显示验证的调过程。硬件设计背光控引脚PI4背光使能引脚PI5件配置显示框架驱动文件bsp/drivers/drm/*背光驱动路径U-Boot./brandy/brandy-2.0/u-boot-2018/drivers/video/pwm_backlight.cKernel./kernel/linux-5.15/drivers/video/backlight/pwm_bl.cPanel驱动路径U-Boot./brandy/brandy-2.0/u-boot-2018/drivers/video/drm/panels/panel-lvds.cKernel./kernel/linux-5.15/bsp/drivers/drm/panel/panel-lvds.c使用内核来调试 LCD 屏。U-Boot 和内核都需要添加 LCD 驱动这样才能快速显示 logo但 U-Boot 不方便调所以可以先关闭 U-Boot 的显示驱动专心调试内核 LCD 驱动调好之后再移植到 U-Boot。这样的另个好处是可以在内核方便地修改 LCD timing——利用 U-Boot 命令的fdt修改 device tree而不需要重烧固件。因此适配屏幕之前可以在brandy/brandy-2.0/u-boot-2018/configs/sun55iw3p1_t527_defconfig中屏蔽如下配置#CONFIG_DISP2_SUNXIyBackLight DTS配背光电源、PWM 使能引确保背光节点状为okay并确认PI4、PI5与原理图一致。Panel DTSmipi_panelmipi_panel: mipi_panel0 { compatible allwinner,virtual-panel; status okay; power-delay-ms 10; power0-supply reg_cldo3; power1-supply reg_dcdc4; power2-supply reg_cldo1; enable-delay-ms 10; reset-gpios pio PJ 19 GPIO_ACTIVE_HIGH; reset-on-sequence 1 10, 0 20, 1 100; reset-off-sequence 0 100; dsi,flags MIPI_DSI_MODE_VIDEO; dsi,lanes 4; dsi,format 0; panel-init-sequence [ 35 00 02 80 8B 35 00 02 81 78 35 00 02 82 84 35 00 02 83 88 35 00 02 84 A8 35 00 02 85 E3 35 00 02 86 88 05 78 01 11 05 14 01 29 ]; panel-exit-sequence [05 00 01 28 05 78 01 10]; display-timings { native-mode timing0; timing0: timing0 { clock-frequency 74871600; hback-porch 48; hactive 1024; hfront-porch 40; hsync-len 48; vback-porch 48; vactive 600; vfront-porch 40; vsync-len 4; }; }; port { panel0_in: endpoint0 { reg 0; remote-endpoint panel_output_0; }; }; }; #### dsi1 dts dsi1 { status okay; pinctrl-0 dsi1_4lane_pins_a; pinctrl-1 dsi1_4lane_pins_b; pinctrl-names active, sleep; ports { dsi1_out: port1 { dsi1_out_panel: endpoint { remote-endpoint panel_input; }; }; }; panel: panel0 { compatible allwinner,virtual-panel; status okay; reg 0; ports { panel_in: port0 { reg 0; panel_input: endpoint0 { reg 0; remote-endpoint dsi1_out_panel; }; }; }; panel_out: port1 { reg 1; panel_output_0: endpoint0 { reg 0; remote-endpoint panel0_in; }; }; }; }; }; #### 其他显示节点 dts dlcd1 { status okay; }; dsi1combophy { status okay; }; vo0 { status okay; };内核置CONFIG_BACKLIGHT_PWMy CONFIG_AW_DRMy CONFIG_AW_DRM_DSIy CONFIG_PANEL_DSI_GENERALy CONFIG_DRMy调试程屏幕调试思路首先配置背光、复位以及屏连接相关引脚先点亮屏幕以排除硬件问题再确认驱动和屏参。关于背光与显示**结论**背光与显示是绑定的。背光驱负责获取和配置 PWM 引脚但不责使能使能动作交给 U-Boot 中的显驱动内核层显示驱动没有使能 PWM 背光的动作只负责获和配置。至于为什么 U-Boot 使能的 PWM 背光到内核仍然保持使能时的驱动实际逻辑还没有完全搞清楚。显示问题在uboot-board.dts增加配置手动高背光和使能发现屏幕有数据但显示仍有题需要进一步调整时钟和屏参。disp 与 drm 屏参转计算由于disp的lcd_hbp hbp hsync、lcd_vbp vbp vsync转关系如下disp 参数drm 参数lcd_ht * lcd_vt * 60clock-frequencylcd_hbp - lcd_hspwhback-porchlcd_xhactivelcd_ht - lcd_x - lcd_hbphfront-porchlcd_hspwhsync-lenlcd_vbp - lcd_vspwvback-porchlcd_yvactivelcd_vt - lcd_y - lcd_vbpvfront-porchlcd_vspwvsync-lenfdt 命令调屏参fdt print /mipi_panel0 fdt set /mipi_panel0/display-timings/timing0 clock-frequency 0x030a32c0 # 51M fdt set /mipi_panel0/display-timings/timing0 clock-frequency 0x04767330 # 74M boot屏参 1效果更差fdt print /mipi_panel0 fdt set /mipi_panel0/display-timings/timing0 clock-frequency 0x0384bb80 fdt set /mipi_panel0/display-timings/timing0 hback-porch 0x032 fdt set /mipi_panel0/display-timings/timing0 hfront-porch 0x03c fdt set /mipi_panel0/display-timings/timing0 hsync-len 0x0a fdt set /mipi_panel0/display-timings/timing0 vback-porch 0xb2 fdt set /mipi_panel0/display-timings/timing0 vfront-porch 0x50 fdt set /mipi_panel0/display-timings/timing0 vsync-len 0x02 boot问题解决最发现是 MIPI 时钟问题前面尝试了很多屏果都不大。最使用示波器发现DSI1-CKP/N有波形。进步排查时钟发现 U-Boot 与内核配置的时钟不同U-Boot 时钟是 51 MHzKernel 时钟是 74 MHz。统一修改为 74 MHz 后显示正。能验证背光测试echoX/sys/class/backlight/backlight1/brightness显示测试查看 DRM 设备ls/sys/class/drm/*花屏清屏试ddif/dev/urandom/dev/fb0ddif/dev/zeroof/dev/fb0调总结调试思路拿到一块屏幕后首先确认硬件电压以及线序。硬件确认无误后接上屏幕查看背光是否点亮背光不亮先解决背光问题然后根据屏幕参数修改 DTS 屏参、复位/使能脚以及时钟并确认具体屏驱及加载情况。最后根据 log 和现象解决题。MIPI 屏需要注意初始化代码相比 LVDS 步骤更多全志平台的显示分为 U-Boot 和内核两个阶段需要同时修改这两个阶段的 DTS。RK 平台显示共用一份屏参因此调试时只需关注内核阶段。排查思路背光不使用万用表对照原理图确认硬件路电压。使用示波器确认 PWM 背光脚是有波形输出并确用户层是否存在且控的背光节点。如果以上两步都没有问题换一块屏幕测试。背光亮但黑屏用示波器抓取时钟波形确认是否有输出如果有换屏测试如果没有继续排查。确认显示链路和图是否正确一般可以通过 log 查看。不同平显示链路和图会有所差具体排查手段参考原厂资料志平台要特别留意 U-Boot。
企业数字化 ERP 产品动态
相关推荐
CTF Agent本质:解题流程的智能协作者而非自动答题器 1. CTF Agent不是“AI答题器”,而是解题流程的智能协作者CTF Agent这个概念最近在安全圈和AI开发者社区里频繁出现,但很多人一看到“Agent”就下意识联想到“自动解题机器人”——这恰恰是最大的认知偏差。我带过三届高校CTF战队,也参与过多个… · 2026/9/26 6:49:02
openclaw中文版部署实战:让AI Agent接入飞书与Teams 可能很多人和我一样,本地已经跑了好几个Agent项目,但真正落地的痛点从来不是模型能力本身,而是怎么把这些能力接进每天都在用的聊天工具里。openclaw就是专门解决这个问题的开源框架——它把大语言模型和飞书、Teams这类IM平台之间的对接全部… · 2026/9/26 6:49:02
编码助手接入私有化大模型:Agnes AI 配置与调优实践指南 1. 为什么要把编码助手从默认模型换成 Agnes AI 模型1.1 多模型接入不是“被迫营业”,是刚需先说说我遇到的真实场景。公司内部要做代码智能评审和自动补全,最开始用的是大厂默认模型,效果确实不错,但有两个问题绕不过去ÿ… · 2026/9/26 6:49:02
PCA+BP+PNN工业故障诊断落地实践 简介:本资源是一套面向机器学习初学者与算法实践者的PNN、PCA及BP神经网络综合实现代码包,聚焦于模式识别、特征降维与非线性分类任务,适用于课程设计、算法原理验证及小型数据建模项目。压缩包共49个文件,以35个MATLAB数据文件&a… · 2026/9/26 7:26:46
长程Agent上下文管理:分层记忆与主动压缩实战指南 1. 长程 Agent 上下文管理为什么成了顶会硬骨头如果你最近翻过 ICLR、ICML 的投稿列表,会发现一个很明显的信号:Agent 相关的工作从“能不能跑通”全面转向了“能不能跑得久”。前两年大家还在卷 prompt 工程、卷工具调用格式,现在审稿人开口… · 2026/9/26 7:26:46
基于SSM框架的班级同学录聚会报名网站实战开发 两个月前,我们班班长老赵往群里丢了一个在线文档,标题写着"毕业五年聚会报名,请大家尽快填写"。我点开的时候已经过去一天,三十多个人填得五花八门:有人把"带家属"写在备注里,有人报了… · 2026/9/26 7:26:46
多Agent协作系统架构设计与任务调度实战指南 1. 多Agent协作到底在解决什么问题单Agent跑任务,跑到一定复杂度就会撞墙。这不是模型能力不够,而是架构层面的天花板。我拿一个真实场景来说明:让一个Agent去完成“调研某个技术方向、输出一份带数据支撑的分析报告”这件事,它需… · 2026/9/26 7:26:46
五个正在颠覆Python开发体验的新库:环境、数据、AI全覆盖 前两天帮一个做数据分析的朋友配环境,他还在用conda创建虚拟环境,等命令跑完的工夫已经泡了杯茶。我说你手上这批操作,其实这两年新出来的工具早就把体验提升了一个档次,他还不信。后来我给他装完uv和marimo,他回头跟我… · 2026/9/26 7:26:46
大模型记忆系统实战:架构、落地方案与避坑指南 大模型的“失忆”问题,我这两年几乎每做一个应用都会撞上一次。用户上午跟助手聊清楚的文件归档规则,下午再问就被忘得一干二净;智能体处理到第三轮任务时,连自己第一步的结论都能搞错。这让我越来越确定一件事:当大家… · 2026/9/26 7:26:40
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍 简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践 一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46