/* * (C) Copyright 2014 Leo C. * * (C) Copyright 2000-2009 * Wolfgang Denk, DENX Software Engineering, wd@denx.de. * * SPDX-License-Identifier: GPL-2.0+ */ #ifndef DEBUG_H_ #define DEBUG_H_ #include "common.h" #ifdef DEBUG #define _DEBUG 1 #else #define _DEBUG 0 #endif /* * Output a debug text when condition "cond" is met. The "cond" should be * computed by a preprocessor in the best case, allowing for the best * optimization. */ #define debug_cond(cond, fmt, args...) \ do { \ if (cond) \ printf_P(PSTR(fmt), ##args); \ } while (0) #define debug(fmt, args...) \ debug_cond(_DEBUG, fmt, ##args) #if 1 #ifdef DEBUG #define DBG_P(lvl, format, ...) if (DEBUG>=lvl) \ fprintf_P( stdout, PSTR(format), ##__VA_ARGS__ ) #else #define DBG_P(lvl, ...) #endif #endif /* 0 */ void printfreelist(const char * title); #endif /* DEBUG_H_ */