第一种:
将下面这句代码加入到驱动所在目录中的sources文件中即可:
CDEFINES=$(CDEFINES) -DDEBUG
第二种
#undef DEBUGMSG
#define DEBUGMSG(x,s) RETAILMSG(1,s)
将下面这句代码加入到驱动所在目录中的sources文件中即可:
CDEFINES=$(CDEFINES) -DDEBUG
第二种
#undef DEBUGMSG
#define DEBUGMSG(x,s) RETAILMSG(1,s)
这样这个驱动文件里的所有调试信息都会打印出来,并且不理会DebugZone的设置。
这方面还需要研究 DebugZone
————有关DebugZone的设置,可以参考
http://space.itpub.net/16912323/viewspace-509778
如果想屏蔽某个驱动的所有打印信息怎么办?在驱动前面加入如下宏定义即可
#defineSHIP_BUILD 1
#ifdef SHIP_BUILD
#defineERRORMSG(cond,printf_exp) ((void)0)
#define RETAILMSG(cond,printf_exp) ((void)0)
#define DEBUGMSG(cond,printf_exp) ((void)0)
#define DEBUGLED(cond,parms) ((void)0)
#define DBGCHK(module,exp) ((void)0)
#define DEBUGCHK(exp) ((void)0)
#define DEBUGREGISTER(hMod) ((void)0)
#define RETAILREGISTERZONES(hMod) ((void)0)
#endif
效果很好,只是编译会多几个警告,不过这个不影响使用的。
本文介绍了如何在驱动文件中启用或屏蔽调试信息,包括使用宏定义CDEFINES和SHIP_BUILD1来控制DEBUGMSG的输出,同时提供了屏蔽所有打印信息的方法。
12万+

被折叠的 条评论
为什么被折叠?



