1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef CIO_DEBUG_H
3#define CIO_DEBUG_H
4
5#include <asm/debug.h>
6
7/* for use of debug feature */
8extern debug_info_t *cio_debug_msg_id;
9extern debug_info_t *cio_debug_trace_id;
10extern debug_info_t *cio_debug_crw_id;
11
12#define CIO_TRACE_EVENT(imp, txt) do {				\
13		debug_text_event(cio_debug_trace_id, imp, txt); \
14	} while (0)
15
16#define CIO_MSG_EVENT(imp, args...) do {				\
17		debug_sprintf_event(cio_debug_msg_id, imp , ##args);	\
18	} while (0)
19
20#define CIO_CRW_EVENT(imp, args...) do {				\
21		debug_sprintf_event(cio_debug_crw_id, imp , ##args);	\
22	} while (0)
23
24static inline void CIO_HEX_EVENT(int level, void *data, int length)
25{
26	debug_event(cio_debug_trace_id, level, data, length);
27}
28
29/* For the CIO debugfs related features */
30extern struct dentry *cio_debugfs_dir;
31
32#endif
33