Linux Audio

Check our new training course

Loading...
v6.2
  1/* SPDX-License-Identifier: GPL-2.0-only */
  2/******************************************************************************
  3 *
  4 * Copyright(c) 2009 - 2014 Intel Corporation. All rights reserved.
  5 * Copyright(c) 2016-2017 Intel Deutschland GmbH
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  6 *****************************************************************************/
  7
  8#if !defined(__IWLWIFI_DEVICE_TRACE_IO) || defined(TRACE_HEADER_MULTI_READ)
  9#define __IWLWIFI_DEVICE_TRACE_IO
 10
 11#include <linux/tracepoint.h>
 12#include <linux/pci.h>
 13
 14#undef TRACE_SYSTEM
 15#define TRACE_SYSTEM iwlwifi_io
 16
 17TRACE_EVENT(iwlwifi_dev_ioread32,
 18	TP_PROTO(const struct device *dev, u32 offs, u32 val),
 19	TP_ARGS(dev, offs, val),
 20	TP_STRUCT__entry(
 21		DEV_ENTRY
 22		__field(u32, offs)
 23		__field(u32, val)
 24	),
 25	TP_fast_assign(
 26		DEV_ASSIGN;
 27		__entry->offs = offs;
 28		__entry->val = val;
 29	),
 30	TP_printk("[%s] read io[%#x] = %#x",
 31		  __get_str(dev), __entry->offs, __entry->val)
 32);
 33
 34TRACE_EVENT(iwlwifi_dev_iowrite8,
 35	TP_PROTO(const struct device *dev, u32 offs, u8 val),
 36	TP_ARGS(dev, offs, val),
 37	TP_STRUCT__entry(
 38		DEV_ENTRY
 39		__field(u32, offs)
 40		__field(u8, val)
 41	),
 42	TP_fast_assign(
 43		DEV_ASSIGN;
 44		__entry->offs = offs;
 45		__entry->val = val;
 46	),
 47	TP_printk("[%s] write io[%#x] = %#x)",
 48		  __get_str(dev), __entry->offs, __entry->val)
 49);
 50
 51TRACE_EVENT(iwlwifi_dev_iowrite32,
 52	TP_PROTO(const struct device *dev, u32 offs, u32 val),
 53	TP_ARGS(dev, offs, val),
 54	TP_STRUCT__entry(
 55		DEV_ENTRY
 56		__field(u32, offs)
 57		__field(u32, val)
 58	),
 59	TP_fast_assign(
 60		DEV_ASSIGN;
 61		__entry->offs = offs;
 62		__entry->val = val;
 63	),
 64	TP_printk("[%s] write io[%#x] = %#x)",
 65		  __get_str(dev), __entry->offs, __entry->val)
 66);
 67
 68TRACE_EVENT(iwlwifi_dev_iowrite64,
 69	TP_PROTO(const struct device *dev, u64 offs, u64 val),
 70	TP_ARGS(dev, offs, val),
 71	TP_STRUCT__entry(
 72		DEV_ENTRY
 73		__field(u64, offs)
 74		__field(u64, val)
 75	),
 76	TP_fast_assign(
 77		DEV_ASSIGN;
 78		__entry->offs = offs;
 79		__entry->val = val;
 80	),
 81	TP_printk("[%s] write io[%llu] = %llu)",
 82		  __get_str(dev), __entry->offs, __entry->val)
 83);
 84
 85TRACE_EVENT(iwlwifi_dev_iowrite_prph32,
 86	TP_PROTO(const struct device *dev, u32 offs, u32 val),
 87	TP_ARGS(dev, offs, val),
 88	TP_STRUCT__entry(
 89		DEV_ENTRY
 90		__field(u32, offs)
 91		__field(u32, val)
 92	),
 93	TP_fast_assign(
 94		DEV_ASSIGN;
 95		__entry->offs = offs;
 96		__entry->val = val;
 97	),
 98	TP_printk("[%s] write PRPH[%#x] = %#x)",
 99		  __get_str(dev), __entry->offs, __entry->val)
100);
101
102TRACE_EVENT(iwlwifi_dev_iowrite_prph64,
103	TP_PROTO(const struct device *dev, u64 offs, u64 val),
104	TP_ARGS(dev, offs, val),
105	TP_STRUCT__entry(
106		DEV_ENTRY
107		__field(u64, offs)
108		__field(u64, val)
109	),
110	TP_fast_assign(
111		DEV_ASSIGN;
112		__entry->offs = offs;
113		__entry->val = val;
114	),
115	TP_printk("[%s] write PRPH[%llu] = %llu)",
116		  __get_str(dev), __entry->offs, __entry->val)
117);
118
119TRACE_EVENT(iwlwifi_dev_ioread_prph32,
120	TP_PROTO(const struct device *dev, u32 offs, u32 val),
121	TP_ARGS(dev, offs, val),
122	TP_STRUCT__entry(
123		DEV_ENTRY
124		__field(u32, offs)
125		__field(u32, val)
126	),
127	TP_fast_assign(
128		DEV_ASSIGN;
129		__entry->offs = offs;
130		__entry->val = val;
131	),
132	TP_printk("[%s] read PRPH[%#x] = %#x",
133		  __get_str(dev), __entry->offs, __entry->val)
134);
135
136TRACE_EVENT(iwlwifi_dev_irq,
137	TP_PROTO(const struct device *dev),
138	TP_ARGS(dev),
139	TP_STRUCT__entry(
140		DEV_ENTRY
141	),
142	TP_fast_assign(
143		DEV_ASSIGN;
144	),
145	/* TP_printk("") doesn't compile */
146	TP_printk("%d", 0)
147);
148
149TRACE_EVENT(iwlwifi_dev_irq_msix,
150	TP_PROTO(const struct device *dev, struct msix_entry *msix_entry,
151		 bool defirq, u32 inta_fh, u32 inta_hw),
152	TP_ARGS(dev, msix_entry, defirq, inta_fh, inta_hw),
153	TP_STRUCT__entry(
154		DEV_ENTRY
155		__field(u32, entry)
156		__field(u8, defirq)
157		__field(u32, inta_fh)
158		__field(u32, inta_hw)
159	),
160	TP_fast_assign(
161		DEV_ASSIGN;
162		__entry->entry = msix_entry->entry;
163		__entry->defirq = defirq;
164		__entry->inta_fh = inta_fh;
165		__entry->inta_hw = inta_hw;
166	),
167	TP_printk("entry:%d defirq:%d fh:0x%x, hw:0x%x",
168		  __entry->entry, __entry->defirq,
169		  __entry->inta_fh, __entry->inta_hw)
170);
171
172TRACE_EVENT(iwlwifi_dev_ict_read,
173	TP_PROTO(const struct device *dev, u32 index, u32 value),
174	TP_ARGS(dev, index, value),
175	TP_STRUCT__entry(
176		DEV_ENTRY
177		__field(u32, index)
178		__field(u32, value)
179	),
180	TP_fast_assign(
181		DEV_ASSIGN;
182		__entry->index = index;
183		__entry->value = value;
184	),
185	TP_printk("[%s] read ict[%d] = %#.8x",
186		  __get_str(dev), __entry->index, __entry->value)
187);
188#endif /* __IWLWIFI_DEVICE_TRACE_IO */
189
190#undef TRACE_INCLUDE_PATH
191#define TRACE_INCLUDE_PATH .
192#undef TRACE_INCLUDE_FILE
193#define TRACE_INCLUDE_FILE iwl-devtrace-io
194#include <trace/define_trace.h>
v4.6
 
  1/******************************************************************************
  2 *
  3 * Copyright(c) 2009 - 2014 Intel Corporation. All rights reserved.
  4 *
  5 * This program is free software; you can redistribute it and/or modify it
  6 * under the terms of version 2 of the GNU General Public License as
  7 * published by the Free Software Foundation.
  8 *
  9 * This program is distributed in the hope that it will be useful, but WITHOUT
 10 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 11 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
 12 * more details.
 13 *
 14 * You should have received a copy of the GNU General Public License along with
 15 * this program; if not, write to the Free Software Foundation, Inc.,
 16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
 17 *
 18 * The full GNU General Public License is included in this distribution in the
 19 * file called LICENSE.
 20 *
 21 * Contact Information:
 22 *  Intel Linux Wireless <linuxwifi@intel.com>
 23 * Intel Corporation, 5200 N.E. Elam Young Parkway, Hillsboro, OR 97124-6497
 24 *
 25 *****************************************************************************/
 26
 27#if !defined(__IWLWIFI_DEVICE_TRACE_IO) || defined(TRACE_HEADER_MULTI_READ)
 28#define __IWLWIFI_DEVICE_TRACE_IO
 29
 30#include <linux/tracepoint.h>
 
 31
 32#undef TRACE_SYSTEM
 33#define TRACE_SYSTEM iwlwifi_io
 34
 35TRACE_EVENT(iwlwifi_dev_ioread32,
 36	TP_PROTO(const struct device *dev, u32 offs, u32 val),
 37	TP_ARGS(dev, offs, val),
 38	TP_STRUCT__entry(
 39		DEV_ENTRY
 40		__field(u32, offs)
 41		__field(u32, val)
 42	),
 43	TP_fast_assign(
 44		DEV_ASSIGN;
 45		__entry->offs = offs;
 46		__entry->val = val;
 47	),
 48	TP_printk("[%s] read io[%#x] = %#x",
 49		  __get_str(dev), __entry->offs, __entry->val)
 50);
 51
 52TRACE_EVENT(iwlwifi_dev_iowrite8,
 53	TP_PROTO(const struct device *dev, u32 offs, u8 val),
 54	TP_ARGS(dev, offs, val),
 55	TP_STRUCT__entry(
 56		DEV_ENTRY
 57		__field(u32, offs)
 58		__field(u8, val)
 59	),
 60	TP_fast_assign(
 61		DEV_ASSIGN;
 62		__entry->offs = offs;
 63		__entry->val = val;
 64	),
 65	TP_printk("[%s] write io[%#x] = %#x)",
 66		  __get_str(dev), __entry->offs, __entry->val)
 67);
 68
 69TRACE_EVENT(iwlwifi_dev_iowrite32,
 70	TP_PROTO(const struct device *dev, u32 offs, u32 val),
 71	TP_ARGS(dev, offs, val),
 72	TP_STRUCT__entry(
 73		DEV_ENTRY
 74		__field(u32, offs)
 75		__field(u32, val)
 76	),
 77	TP_fast_assign(
 78		DEV_ASSIGN;
 79		__entry->offs = offs;
 80		__entry->val = val;
 81	),
 82	TP_printk("[%s] write io[%#x] = %#x)",
 83		  __get_str(dev), __entry->offs, __entry->val)
 84);
 85
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 86TRACE_EVENT(iwlwifi_dev_iowrite_prph32,
 87	TP_PROTO(const struct device *dev, u32 offs, u32 val),
 88	TP_ARGS(dev, offs, val),
 89	TP_STRUCT__entry(
 90		DEV_ENTRY
 91		__field(u32, offs)
 92		__field(u32, val)
 93	),
 94	TP_fast_assign(
 95		DEV_ASSIGN;
 96		__entry->offs = offs;
 97		__entry->val = val;
 98	),
 99	TP_printk("[%s] write PRPH[%#x] = %#x)",
100		  __get_str(dev), __entry->offs, __entry->val)
101);
102
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
103TRACE_EVENT(iwlwifi_dev_ioread_prph32,
104	TP_PROTO(const struct device *dev, u32 offs, u32 val),
105	TP_ARGS(dev, offs, val),
106	TP_STRUCT__entry(
107		DEV_ENTRY
108		__field(u32, offs)
109		__field(u32, val)
110	),
111	TP_fast_assign(
112		DEV_ASSIGN;
113		__entry->offs = offs;
114		__entry->val = val;
115	),
116	TP_printk("[%s] read PRPH[%#x] = %#x",
117		  __get_str(dev), __entry->offs, __entry->val)
118);
119
120TRACE_EVENT(iwlwifi_dev_irq,
121	TP_PROTO(const struct device *dev),
122	TP_ARGS(dev),
123	TP_STRUCT__entry(
124		DEV_ENTRY
125	),
126	TP_fast_assign(
127		DEV_ASSIGN;
128	),
129	/* TP_printk("") doesn't compile */
130	TP_printk("%d", 0)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
131);
132
133TRACE_EVENT(iwlwifi_dev_ict_read,
134	TP_PROTO(const struct device *dev, u32 index, u32 value),
135	TP_ARGS(dev, index, value),
136	TP_STRUCT__entry(
137		DEV_ENTRY
138		__field(u32, index)
139		__field(u32, value)
140	),
141	TP_fast_assign(
142		DEV_ASSIGN;
143		__entry->index = index;
144		__entry->value = value;
145	),
146	TP_printk("[%s] read ict[%d] = %#.8x",
147		  __get_str(dev), __entry->index, __entry->value)
148);
149#endif /* __IWLWIFI_DEVICE_TRACE_IO */
150
151#undef TRACE_INCLUDE_PATH
152#define TRACE_INCLUDE_PATH .
153#undef TRACE_INCLUDE_FILE
154#define TRACE_INCLUDE_FILE iwl-devtrace-io
155#include <trace/define_trace.h>