211 lines
7.1 KiB
C
211 lines
7.1 KiB
C
|
/*
|
||
|
* Copyright (C) 2014 NXP Semiconductors, All Rights Reserved.
|
||
|
*
|
||
|
* This program is free software; you can redistribute it and/or modify
|
||
|
* it under the terms of the GNU General Public License version 2 as
|
||
|
* published by the Free Software Foundation.
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
#ifndef _DBGPRINT_H
|
||
|
#define _DBGPRINT_H
|
||
|
|
||
|
/* Debugging macro's. */
|
||
|
#ifndef DEBUG
|
||
|
#define DEBUG
|
||
|
#endif
|
||
|
|
||
|
#ifndef ASSERT
|
||
|
//#define ASSERT
|
||
|
#endif
|
||
|
// TODO wwwim
|
||
|
#ifndef _ASSERT
|
||
|
#define _ASSERT(e)
|
||
|
#endif
|
||
|
|
||
|
#ifndef PREFIX
|
||
|
#define PREFIX "tfa98xx: "
|
||
|
#define DRIVER_NAME "tfa98xx"
|
||
|
#endif
|
||
|
|
||
|
#ifdef __KERNEL__
|
||
|
|
||
|
#ifdef DEBUG
|
||
|
#define _DEBUG(level, fmt, va...) \
|
||
|
do { \
|
||
|
if (unlikely(debug >= (level))) \
|
||
|
pr_info(PREFIX "%s:%d: " fmt, __func__, __LINE__, \
|
||
|
##va); \
|
||
|
} while (0)
|
||
|
|
||
|
#else
|
||
|
#define _DEBUG(level, fmt, va...) \
|
||
|
do { \
|
||
|
} while (0)
|
||
|
#endif
|
||
|
|
||
|
#define MSG(fmt, va...) pr_info(PREFIX "%s:%d: " fmt, __func__, __LINE__, ##va)
|
||
|
#define _ERRORMSG(fmt, va...) \
|
||
|
pr_err(PREFIX "ERROR %s:%d: " fmt, __func__, __LINE__, ##va)
|
||
|
|
||
|
#define DEBUG0(x...) MSG(x)
|
||
|
#define DEBUG1(x...) _DEBUG(1, x)
|
||
|
#define DEBUG2(x...) _DEBUG(2, x)
|
||
|
#define DEBUG3(x...) _DEBUG(3, x)
|
||
|
#define ERRORMSG(x...) _ERRORMSG(x)
|
||
|
#define PRINT(x...) printk(x)
|
||
|
#define PRINT_ERROR(x...) pr_info(PREFIX " **ERROR** " x)
|
||
|
#define PRINT_ASSERT(e) \
|
||
|
do { \
|
||
|
if ((e)) \
|
||
|
pr_err("PrintAssert:%s (%s:%d) error code:%d\n", \
|
||
|
__func__, __FILE__, __LINE__, e); \
|
||
|
} while (0)
|
||
|
|
||
|
#define PRINT_ENTRY DEBUG2("+[%s]\n", __func__)
|
||
|
#define PRINT_EXIT DEBUG2("-[%s]\n", __func__)
|
||
|
|
||
|
#ifdef ASSERT
|
||
|
#define assert(cond, action) \
|
||
|
do { \
|
||
|
if (unlikely(!(cond))) { \
|
||
|
DEBUG0("Assert: %s\n", #cond); \
|
||
|
action; \
|
||
|
} \
|
||
|
} while (0)
|
||
|
#else
|
||
|
#define assert(cond, action) \
|
||
|
do { \
|
||
|
} while (0)
|
||
|
#endif
|
||
|
|
||
|
#else /* __KERNEL__ */
|
||
|
#if defined(WIN32) || defined(_X64)
|
||
|
#include <stdio.h>
|
||
|
/* user mode */
|
||
|
#ifdef DEBUG
|
||
|
#define _DEBUGMSG(level, fmt, ...) \
|
||
|
printf(PREFIX "%s:%d: " fmt, __func__, __LINE__, __VA_ARGS__)
|
||
|
#else
|
||
|
#define _DEBUGMSG(level, fmt, ...) \
|
||
|
do { \
|
||
|
} while (0)
|
||
|
#endif
|
||
|
|
||
|
#define _ERRORMSG(fmt, ...) \
|
||
|
printf(PREFIX "%s:%s:%d: " fmt, __FILE__, __func__, __LINE__, \
|
||
|
__VA_ARGS__)
|
||
|
|
||
|
#define DEBUG0(...) MSG(__VA_ARGS__)
|
||
|
#define DEBUG1(...) _DEBUGMSG(1, __VA_ARGS__)
|
||
|
#define DEBUG2(...) _DEBUGMSG(2, __VA_ARGS__)
|
||
|
#define DEBUG3(...) _DEBUGMSG(3, __VA_ARGS__)
|
||
|
#define ERRORMSG(fmt, ...) _ERRORMSG(fmt, __VA_ARGS__)
|
||
|
#define PRINT(...) printf(__VA_ARGS__)
|
||
|
|
||
|
/*
|
||
|
*#define PRINT(...) \
|
||
|
* do { \
|
||
|
* FILE *stream; \
|
||
|
* if ((stream = freopen("nxp_tfa.txt", "ab+", stdout)) == NULL) \
|
||
|
* exit(-1); \
|
||
|
* printf(__VA_ARGS__); \
|
||
|
* freopen("CON", "ab+", stdout); \
|
||
|
* } while (0)
|
||
|
*/
|
||
|
|
||
|
#define PRINT_ERROR(...) fprintf(stderr, __VA_ARGS__)
|
||
|
#define PRINT_FILE(file, ...) fprintf(file, __VA_ARGS__)
|
||
|
#define PRINT_ASSERT(e) \
|
||
|
do { \
|
||
|
if ((e)) \
|
||
|
fprintf(stderr, \
|
||
|
"PrintAssert:%s (%s:%d) error code:%d\n", \
|
||
|
__func__, __FILE__, __LINE__, e); \
|
||
|
} while (0)
|
||
|
//# define PRINT_ASSERT(e) if ((e)) fprintf(stderr, "PrintAssert:%s (%s:%d)
|
||
|
//%s\n",__FUNCTION__,__FILE__,__LINE__, Tfa98xx_GetErrorString(e))
|
||
|
|
||
|
#elif defined(__CODE_RED)
|
||
|
#include "app_global.h"
|
||
|
#ifdef DEBUG
|
||
|
#define _DEBUG(level, fmt, va...) TB_TRACE_INF(TbTracePfx2("tfa", TB_FUNC, va))
|
||
|
// printf(PREFIX "%s:%d: "fmt,__func__,__LINE__,##va);
|
||
|
#else
|
||
|
#define _DEBUG(level, fmt, va...) \
|
||
|
do { \
|
||
|
} while (0)
|
||
|
#endif
|
||
|
|
||
|
#define MSG(fmt, ...) TB_TRACE_INF(TbTracePfx2("tfa", TB_FUNC, __VA_ARGS__))
|
||
|
// printf(PREFIX "%s:%s:%d: "fmt,__FILE__,__func__,__LINE__,##va)
|
||
|
// TB_TRACE_INF(TbTracePfx2(APP_PFX,TB_FUNC,"path=%s, chan=%u, muted=%s,
|
||
|
// vol=%d\n",
|
||
|
// path->isRecording ? "recording"
|
||
|
// : "playback", i,
|
||
|
// channelVol.currentMuteValue ?
|
||
|
// "YES" : "NO",
|
||
|
// channelVol.currentVolumeValue
|
||
|
// ));
|
||
|
//# define _ERRORMSG(fmt,va...) TB_TRACE_INF(TbTracePfx2("tfa",TB_FUNC,va))
|
||
|
#define ERRORMSG(...) TB_TRACE_INF(TbTracePfx2("tfa", TB_FUNC, __VA_ARGS__))
|
||
|
// fprintf(stderr, PREFIX "ERROR %s:%s:%d: "fmt,__FILE__,__func__,__LINE__,
|
||
|
// ##va)
|
||
|
|
||
|
#define DEBUG0(x...) MSG(x)
|
||
|
#define DEBUG1(x...) _DEBUG(1, x)
|
||
|
#define DEBUG2(x...) _DEBUG(2, x)
|
||
|
#define DEBUG3(x...) _DEBUG(3, x)
|
||
|
//# define ERRORMSG(x...) _ERRORMSG(x)
|
||
|
#define PRINT(x...) TB_TRACE_INF(TbTracePfx2("tfa", TB_FUNC, x))
|
||
|
// printf(x)
|
||
|
#define PRINT_ERROR(x...) TB_TRACE_INF(TbTracePfx2("tfa", TB_FUNC, x))
|
||
|
// fprintf(stderr,__VA_ARGS__)
|
||
|
#define PRINT_FILE(file, x...) TB_TRACE_INF(TbTracePfx2("tfa", TB_FUNC, x))
|
||
|
// fprintf(file,__VA_ARGS__)
|
||
|
#define PRINT_ASSERT(e)
|
||
|
// TB_TRACE_INF(TbTracePfx2("tfa",TB_FUNC,Tfa98xx_GetErrorString(e)))
|
||
|
// if ((e)) fprintf(stderr, "PrintAssert:%s (%s:%d)
|
||
|
// %s\n",__FUNCTION__,__FILE__,__LINE__, Tfa98xx_GetErrorString(e))
|
||
|
#else
|
||
|
#include <stdio.h>
|
||
|
/* user mode */
|
||
|
#ifdef DEBUG
|
||
|
#define _DEBUG(level, fmt, va...) \
|
||
|
printf(PREFIX "%s:%d: " fmt, __func__, __LINE__, ##va)
|
||
|
#else
|
||
|
#define _DEBUG(level, fmt, va...) \
|
||
|
do { \
|
||
|
} while (0)
|
||
|
#endif
|
||
|
|
||
|
#define MSG(fmt, va...) \
|
||
|
printf(PREFIX "%s:%s:%d: " fmt, __FILE__, __func__, __LINE__, ##va)
|
||
|
#define _ERRORMSG(fmt, va...) \
|
||
|
fprintf(stderr, PREFIX "ERROR %s:%s:%d: " fmt, __FILE__, __func__, \
|
||
|
__LINE__, ##va)
|
||
|
|
||
|
#define DEBUG0(x...) MSG(x)
|
||
|
#define DEBUG1(x...) _DEBUG(1, x)
|
||
|
#define DEBUG2(x...) _DEBUG(2, x)
|
||
|
#define DEBUG3(x...) _DEBUG(3, x)
|
||
|
#define ERRORMSG(x...) _ERRORMSG(x)
|
||
|
#define PRINT(x...) printf(x)
|
||
|
#define PRINT_ERROR(...) fprintf(stderr, __VA_ARGS__)
|
||
|
#define PRINT_FILE(file, ...) fprintf(file, __VA_ARGS__)
|
||
|
#define PRINT_ASSERT(e) \
|
||
|
do { \
|
||
|
if ((e)) \
|
||
|
fprintf(stderr, \
|
||
|
"PrintAssert:%s (%s:%d) error code:%d\n", \
|
||
|
__func__, __FILE__, __LINE__, e); \
|
||
|
} while (0)
|
||
|
//# define PRINT_ASSERT(e) if ((e)) fprintf(stderr, "PrintAssert:%s (%s:%d)
|
||
|
//%s\n",__func__,__FILE__,__LINE__, Tfa98xx_GetErrorString(e))
|
||
|
|
||
|
#endif /* WIN32 */
|
||
|
|
||
|
#endif /* user */
|
||
|
|
||
|
#endif /* _DBGPRINT_H --------------- */
|