首页 > 代码库 > 打开固定文件的pr_debug

打开固定文件的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,避免逐个打开的工作量.

打开固定文件的pr_debug