打开固定文件的pr_debug

驱动中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了,避免逐个打开的工作量.

上一篇:Java开发笔记(十四)几种运算符的优先级顺序


下一篇:HW3.14