OSDN Git Service

mt76: move mt76x02_tx_complete in mt76x02-lib module
[uclinux-h8/linux.git] / drivers / net / wireless / mediatek / mt76 / mt76x2 / trace.h
1 /*
2  * Copyright (C) 2016 Felix Fietkau <nbd@nbd.name>
3  *
4  * Permission to use, copy, modify, and/or distribute this software for any
5  * purpose with or without fee is hereby granted, provided that the above
6  * copyright notice and this permission notice appear in all copies.
7  *
8  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
10  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
11  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
12  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
13  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
14  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
15  */
16
17 #if !defined(__MT76x2_TRACE_H) || defined(TRACE_HEADER_MULTI_READ)
18 #define __MT76x2_TRACE_H
19
20 #include <linux/tracepoint.h>
21 #include "mt76x2.h"
22
23 #undef TRACE_SYSTEM
24 #define TRACE_SYSTEM mt76x2
25
26 #define MAXNAME         32
27 #define DEV_ENTRY       __array(char, wiphy_name, 32)
28 #define DEV_ASSIGN      strlcpy(__entry->wiphy_name, wiphy_name(mt76_hw(dev)->wiphy), MAXNAME)
29 #define DEV_PR_FMT      "%s"
30 #define DEV_PR_ARG      __entry->wiphy_name
31
32 #define TXID_ENTRY      __field(u8, wcid) __field(u8, pktid)
33 #define TXID_ASSIGN     __entry->wcid = wcid; __entry->pktid = pktid
34 #define TXID_PR_FMT     " [%d:%d]"
35 #define TXID_PR_ARG     __entry->wcid, __entry->pktid
36
37 TRACE_EVENT(dev_irq,
38         TP_PROTO(struct mt76x02_dev *dev, u32 val, u32 mask),
39
40         TP_ARGS(dev, val, mask),
41
42         TP_STRUCT__entry(
43                 DEV_ENTRY
44                 __field(u32, val)
45                 __field(u32, mask)
46         ),
47
48         TP_fast_assign(
49                 DEV_ASSIGN;
50                 __entry->val = val;
51                 __entry->mask = mask;
52         ),
53
54         TP_printk(
55                 DEV_PR_FMT " %08x & %08x",
56                 DEV_PR_ARG, __entry->val, __entry->mask
57         )
58 );
59
60 #endif
61
62 #undef TRACE_INCLUDE_PATH
63 #define TRACE_INCLUDE_PATH .
64 #undef TRACE_INCLUDE_FILE
65 #define TRACE_INCLUDE_FILE trace
66
67 #include <trace/define_trace.h>