162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */ 262306a36Sopenharmony_ci/****************************************************************************** 362306a36Sopenharmony_ci * 462306a36Sopenharmony_ci * Copyright(c) 2009 - 2014 Intel Corporation. All rights reserved. 562306a36Sopenharmony_ci *****************************************************************************/ 662306a36Sopenharmony_ci 762306a36Sopenharmony_ci#if !defined(__IWLWIFI_DEVICE_TRACE_MSG) || defined(TRACE_HEADER_MULTI_READ) 862306a36Sopenharmony_ci#define __IWLWIFI_DEVICE_TRACE_MSG 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci#include <linux/tracepoint.h> 1162306a36Sopenharmony_ci 1262306a36Sopenharmony_ci#undef TRACE_SYSTEM 1362306a36Sopenharmony_ci#define TRACE_SYSTEM iwlwifi_msg 1462306a36Sopenharmony_ci 1562306a36Sopenharmony_ci#define MAX_MSG_LEN 110 1662306a36Sopenharmony_ci 1762306a36Sopenharmony_ciDECLARE_EVENT_CLASS(iwlwifi_msg_event, 1862306a36Sopenharmony_ci TP_PROTO(struct va_format *vaf), 1962306a36Sopenharmony_ci TP_ARGS(vaf), 2062306a36Sopenharmony_ci TP_STRUCT__entry( 2162306a36Sopenharmony_ci __vstring(msg, vaf->fmt, vaf->va) 2262306a36Sopenharmony_ci ), 2362306a36Sopenharmony_ci TP_fast_assign( 2462306a36Sopenharmony_ci __assign_vstr(msg, vaf->fmt, vaf->va); 2562306a36Sopenharmony_ci ), 2662306a36Sopenharmony_ci TP_printk("%s", __get_str(msg)) 2762306a36Sopenharmony_ci); 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_ciDEFINE_EVENT(iwlwifi_msg_event, iwlwifi_err, 3062306a36Sopenharmony_ci TP_PROTO(struct va_format *vaf), 3162306a36Sopenharmony_ci TP_ARGS(vaf) 3262306a36Sopenharmony_ci); 3362306a36Sopenharmony_ci 3462306a36Sopenharmony_ciDEFINE_EVENT(iwlwifi_msg_event, iwlwifi_warn, 3562306a36Sopenharmony_ci TP_PROTO(struct va_format *vaf), 3662306a36Sopenharmony_ci TP_ARGS(vaf) 3762306a36Sopenharmony_ci); 3862306a36Sopenharmony_ci 3962306a36Sopenharmony_ciDEFINE_EVENT(iwlwifi_msg_event, iwlwifi_info, 4062306a36Sopenharmony_ci TP_PROTO(struct va_format *vaf), 4162306a36Sopenharmony_ci TP_ARGS(vaf) 4262306a36Sopenharmony_ci); 4362306a36Sopenharmony_ci 4462306a36Sopenharmony_ciDEFINE_EVENT(iwlwifi_msg_event, iwlwifi_crit, 4562306a36Sopenharmony_ci TP_PROTO(struct va_format *vaf), 4662306a36Sopenharmony_ci TP_ARGS(vaf) 4762306a36Sopenharmony_ci); 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ciTRACE_EVENT(iwlwifi_dbg, 5062306a36Sopenharmony_ci TP_PROTO(u32 level, const char *function, 5162306a36Sopenharmony_ci struct va_format *vaf), 5262306a36Sopenharmony_ci TP_ARGS(level, function, vaf), 5362306a36Sopenharmony_ci TP_STRUCT__entry( 5462306a36Sopenharmony_ci __field(u32, level) 5562306a36Sopenharmony_ci __string(function, function) 5662306a36Sopenharmony_ci __vstring(msg, vaf->fmt, vaf->va) 5762306a36Sopenharmony_ci ), 5862306a36Sopenharmony_ci TP_fast_assign( 5962306a36Sopenharmony_ci __entry->level = level; 6062306a36Sopenharmony_ci __assign_str(function, function); 6162306a36Sopenharmony_ci __assign_vstr(msg, vaf->fmt, vaf->va); 6262306a36Sopenharmony_ci ), 6362306a36Sopenharmony_ci TP_printk("%s", __get_str(msg)) 6462306a36Sopenharmony_ci); 6562306a36Sopenharmony_ci#endif /* __IWLWIFI_DEVICE_TRACE_MSG */ 6662306a36Sopenharmony_ci 6762306a36Sopenharmony_ci#undef TRACE_INCLUDE_PATH 6862306a36Sopenharmony_ci#define TRACE_INCLUDE_PATH . 6962306a36Sopenharmony_ci#undef TRACE_INCLUDE_FILE 7062306a36Sopenharmony_ci#define TRACE_INCLUDE_FILE iwl-devtrace-msg 7162306a36Sopenharmony_ci#include <trace/define_trace.h> 72