树莓派CM4对接MIPI DSI显示屏时,vc4_dsi.c中添加的printk调试信息未在dmesg中显示的问题求助
树莓派CM4对接MIPI DSI显示屏时,vc4_dsi.c中添加的printk调试信息未在dmesg中显示的问题求助
各位好,我目前正在调试树莓派CM4与MIPI DSI显示屏的对接工作,为了排查系统运行中的异常,我在vc4_dsi.c驱动文件中添加了若干printk调试语句,但无论怎么找,这些调试信息都没有出现在dmesg输出里,实在摸不着头绪,想请大家帮忙分析下问题出在哪。
先跟大家说下我的操作流程:
- 定位到内核源码中的
drivers/gpu/drm/vc4/vc4_dsi.c文件,在DSI初始化、链路协商等关键逻辑节点插入了类似printk(KERN_DEBUG "VC4 DSI: 初始化步骤X执行\n");的调试代码 - 重新编译内核及驱动模块,替换CM4系统中的原有内核并重启
- 系统启动后,先后尝试用
dmesg、dmesg | grep "VC4 DSI"检索调试内容,甚至查看/var/log/kern.log日志文件,都完全找不到我添加的调试输出
我已经排查了一些基础可能性:
- 用
uname -r确认当前运行的内核确实是我重新编译的版本,版本号完全匹配 - 尝试将
printk的日志级别从KERN_DEBUG提升至KERN_INFO、KERN_ERR,重新编译后问题依旧 - 检查了
dmesg缓冲区配置,也执行过dmesg -c清空缓冲区后重启系统,还是没有任何调试信息输出
想请教下各位大佬:
- 是不是VC4 DSI驱动有特殊的日志过滤或控制机制,导致自定义的
printk无法正常输出? - 编译内核时有没有特定的配置项需要开启,才能让驱动中的
printk信息正常输出到系统日志? - 还有哪些我没考虑到的排查方向可以尝试?
内容来源于stack exchange
相关产品推荐
相关产品推荐

