打开固定文件的pr_debug

1800阅读 0评论2019-03-31 ispsubb
分类:嵌入式


转载地址:
    https://blog.csdn.net/newtonnl/article/details/39697889

驱动中pr_debug定义在kernel/include/linux/printk.h

/* If you are writing a driver, please usedev_dbg instead */
#if defined(CONFIG_DYNAMIC_DEBUG)
/* dynamic_pr_debug() uses pr_fmt()internally so we don't need it here */
#define pr_debug(fmt, ...) \
         dynamic_pr_debug(fmt,##__VA_ARGS__)
#elif defined(DEBUG)
#define pr_debug(fmt, ...) \
         printk(KERN_DEBUGpr_fmt(fmt), ##__VA_ARGS__)
#else
#define pr_debug(fmt, ...) \
         no_printk(KERN_DEBUGpr_fmt(fmt), ##__VA_ARGS__)
#endif


在makefile文件中增加ccflag+y =--DDEBUG

或者专门宏控制
ccflag+$(CONFIG_AUDIO_CODEC) =--DDEBUG

可以打开全部log,但是对于android多个文件来说log太多导致系统分析不方便,为了便于打开需要模块的log,我在需要打开log的文件中对define进行重新定义.


#ifdef pr_debug
#undef pr_debug
#define pr_debug(fmt, ...) \
printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
#else
#define pr_debug(fmt, ...) \
printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
#endif

这样就方便调试源代码中对应的log了,避免逐个打开的工作量.

在makefile中打印输出信息的方法是:$(warning xxxxx)或者$(error xxxxx)
输出变量方式为:$(warning  $(XXX))


上一篇:uboot 增加 whoami 命令
下一篇:如何搭建 windows VNCviewer 能访问 ubuntu14.04远程桌面