1/* SPDX-License-Identifier: GPL-2.0-only */ 2/****************************************************************************** 3 * 4 * Copyright(c) 2009 - 2014 Intel Corporation. All rights reserved. 5 *****************************************************************************/ 6 7#if !defined(__IWLWIFI_DEVICE_TRACE_MSG) || defined(TRACE_HEADER_MULTI_READ) 8#define __IWLWIFI_DEVICE_TRACE_MSG 9 10#include <linux/tracepoint.h> 11 12#undef TRACE_SYSTEM 13#define TRACE_SYSTEM iwlwifi_msg 14 15#define MAX_MSG_LEN 110 16 17DECLARE_EVENT_CLASS(iwlwifi_msg_event, 18 TP_PROTO(struct va_format *vaf), 19 TP_ARGS(vaf), 20 TP_STRUCT__entry( 21 __vstring(msg, vaf->fmt, vaf->va) 22 ), 23 TP_fast_assign( 24 __assign_vstr(msg, vaf->fmt, vaf->va); 25 ), 26 TP_printk("%s", __get_str(msg)) 27); 28 29DEFINE_EVENT(iwlwifi_msg_event, iwlwifi_err, 30 TP_PROTO(struct va_format *vaf), 31 TP_ARGS(vaf) 32); 33 34DEFINE_EVENT(iwlwifi_msg_event, iwlwifi_warn, 35 TP_PROTO(struct va_format *vaf), 36 TP_ARGS(vaf) 37); 38 39DEFINE_EVENT(iwlwifi_msg_event, iwlwifi_info, 40 TP_PROTO(struct va_format *vaf), 41 TP_ARGS(vaf) 42); 43 44DEFINE_EVENT(iwlwifi_msg_event, iwlwifi_crit, 45 TP_PROTO(struct va_format *vaf), 46 TP_ARGS(vaf) 47); 48 49TRACE_EVENT(iwlwifi_dbg, 50 TP_PROTO(u32 level, const char *function, 51 struct va_format *vaf), 52 TP_ARGS(level, function, vaf), 53 TP_STRUCT__entry( 54 __field(u32, level) 55 __string(function, function) 56 __vstring(msg, vaf->fmt, vaf->va) 57 ), 58 TP_fast_assign( 59 __entry->level = level; 60 __assign_str(function, function); 61 __assign_vstr(msg, vaf->fmt, vaf->va); 62 ), 63 TP_printk("%s", __get_str(msg)) 64); 65#endif /* __IWLWIFI_DEVICE_TRACE_MSG */ 66 67#undef TRACE_INCLUDE_PATH 68#define TRACE_INCLUDE_PATH . 69#undef TRACE_INCLUDE_FILE 70#define TRACE_INCLUDE_FILE iwl-devtrace-msg 71#include <trace/define_trace.h> 72