1b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */
21da177e4SLinus Torvalds #ifndef CIO_DEBUG_H
31da177e4SLinus Torvalds #define CIO_DEBUG_H
41da177e4SLinus Torvalds
51da177e4SLinus Torvalds #include <asm/debug.h>
61da177e4SLinus Torvalds
706fbcb10SPeter Oberparleiter /* for use of debug feature */
806fbcb10SPeter Oberparleiter extern debug_info_t *cio_debug_msg_id;
906fbcb10SPeter Oberparleiter extern debug_info_t *cio_debug_trace_id;
1006fbcb10SPeter Oberparleiter extern debug_info_t *cio_debug_crw_id;
1106fbcb10SPeter Oberparleiter
121da177e4SLinus Torvalds #define CIO_TRACE_EVENT(imp, txt) do { \
131da177e4SLinus Torvalds debug_text_event(cio_debug_trace_id, imp, txt); \
141da177e4SLinus Torvalds } while (0)
151da177e4SLinus Torvalds
161da177e4SLinus Torvalds #define CIO_MSG_EVENT(imp, args...) do { \
171da177e4SLinus Torvalds debug_sprintf_event(cio_debug_msg_id, imp , ##args); \
181da177e4SLinus Torvalds } while (0)
191da177e4SLinus Torvalds
201da177e4SLinus Torvalds #define CIO_CRW_EVENT(imp, args...) do { \
211da177e4SLinus Torvalds debug_sprintf_event(cio_debug_crw_id, imp , ##args); \
221da177e4SLinus Torvalds } while (0)
231da177e4SLinus Torvalds
CIO_HEX_EVENT(int level,void * data,int length)24bc698bcfSCornelia Huck static inline void CIO_HEX_EVENT(int level, void *data, int length)
2506fbcb10SPeter Oberparleiter {
2606fbcb10SPeter Oberparleiter debug_event(cio_debug_trace_id, level, data, length);
2706fbcb10SPeter Oberparleiter }
281da177e4SLinus Torvalds
29*64a715abSVineeth Vijayan /* For the CIO debugfs related features */
30*64a715abSVineeth Vijayan extern struct dentry *cio_debugfs_dir;
31*64a715abSVineeth Vijayan
321da177e4SLinus Torvalds #endif
33