mirror of
https://dev.iopsys.eu/hal/libeasy.git
synced 2025-12-28 15:30:20 +08:00
Trace time consumed by wifi_* functions. Signed-off-by: Janusz Dziedzic <janusz.dziedzic@iopsys.eu>
70 lines
1.9 KiB
C
70 lines
1.9 KiB
C
/*
|
|
* debug.h - defines macros for debugging.
|
|
*
|
|
* Copyright (C) 2020 iopsys Software Solutions AB. 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.
|
|
*
|
|
* This program is distributed in the hope that it will be useful, but
|
|
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU General Public License
|
|
* along with this program; if not, write to the Free Software
|
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
|
|
* 02110-1301 USA
|
|
*/
|
|
#ifndef EASYDEBUG_H
|
|
#define EASYDEBUG_H
|
|
|
|
#define ERR_LEVEL (3)
|
|
#define WARN_LEVEL (4)
|
|
#define INFO_LEVEL (6)
|
|
#define DBG_LEVEL (7)
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
extern void log_stderr(int level, const char *fmt, ...);
|
|
|
|
#define pr_error(...) log_stderr(ERR_LEVEL, __VA_ARGS__)
|
|
#define pr_warn(...) log_stderr(WARN_LEVEL, __VA_ARGS__)
|
|
#define pr_info(...) log_stderr(INFO_LEVEL, __VA_ARGS__)
|
|
#define pr_debug(...) log_stderr(DBG_LEVEL, __VA_ARGS__)
|
|
|
|
#define WARN_ON(cond) \
|
|
({ \
|
|
typeof(cond) __c = (cond); \
|
|
if (__c) \
|
|
pr_warn("%sL%d@%s: [%s] failed\n", __FILE__, __LINE__, __func__, #cond); \
|
|
__c; \
|
|
})
|
|
|
|
#ifdef LIBEASY_TRACE_TIME
|
|
#define ENTER() clock_t _clk_end, _clk_begin; \
|
|
_clk_begin = clock(); \
|
|
pr_error("%s called\n", __func__)
|
|
|
|
#define EXIT(__res__) _clk_end = clock(); \
|
|
pr_error("%s ret %d consume %u us\n\n", __func__, __res__, \
|
|
(unsigned int) _clk_end - _clk_begin)
|
|
|
|
#define EXITV() _clk_end = clock(); \
|
|
pr_error("%s exit consume %u us\n\n", __func__, \
|
|
(unsigned int) _clk_end - _clk_begin)
|
|
#else
|
|
#define ENTER()
|
|
#define EXIT(__res__)
|
|
#define EXITV()
|
|
#endif
|
|
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
#endif /* EASYDEBUG_H */
|