1#ifndef __AF_DEBUG_H__ 2#define __AF_DEBUG_H__ 3extern int af_log_lvl; 4extern int af_test_mode; 5extern int af_work_mode; 6extern unsigned int af_lan_ip; 7extern unsigned int af_lan_mask; 8#define LOG(level, fmt, ...) do { \ 9 if ((level) <= af_log_lvl) { \ 10 printk(fmt, ##__VA_ARGS__); \ 11 } \ 12} while (0) 13 14#define LLOG(level, fmt, ...) do { \ 15 if ((level) <= af_log_lvl) { \ 16 pr_info_ratelimited(fmt, ##__VA_ARGS__); \ 17 } \ 18} while (0) 19 20 21#define AF_ERROR(...) LOG(0, ##__VA_ARGS__) 22#define AF_WARN(...) LOG(1, ##__VA_ARGS__) 23#define AF_INFO(...) LOG(2, ##__VA_ARGS__) 24#define AF_DEBUG(...) LOG(3, ##__VA_ARGS__) 25 26#define AF_LMT_ERROR(...) LLOG(0, ##__VA_ARGS__) 27#define AF_LMT_WARN(...) LLOG(1, ##__VA_ARGS__) 28#define AF_LMT_INFO(...) LLOG(2, ##__VA_ARGS__) 29#define AF_LMT_DEBUG(...) LLOG(3, ##__VA_ARGS__) 30 31 32#define TEST_MODE() (af_test_mode) 33int af_log_init(void); 34int af_log_exit(void); 35#endif 36