xref: /openbmc/linux/include/trace/events/host1x.h (revision 754716874389ccbea5ee03174df8ad9e72e41880)
1*75471687STerje Bergstrom /*
2*75471687STerje Bergstrom  * include/trace/events/host1x.h
3*75471687STerje Bergstrom  *
4*75471687STerje Bergstrom  * host1x event logging to ftrace.
5*75471687STerje Bergstrom  *
6*75471687STerje Bergstrom  * Copyright (c) 2010-2013, NVIDIA Corporation.
7*75471687STerje Bergstrom  *
8*75471687STerje Bergstrom  * This program is free software; you can redistribute it and/or modify
9*75471687STerje Bergstrom  * it under the terms of the GNU General Public License as published by
10*75471687STerje Bergstrom  * the Free Software Foundation; either version 2 of the License, or
11*75471687STerje Bergstrom  * (at your option) any later version.
12*75471687STerje Bergstrom  *
13*75471687STerje Bergstrom  * This program is distributed in the hope that it will be useful, but WITHOUT
14*75471687STerje Bergstrom  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
15*75471687STerje Bergstrom  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
16*75471687STerje Bergstrom  * more details.
17*75471687STerje Bergstrom  *
18*75471687STerje Bergstrom  * You should have received a copy of the GNU General Public License along
19*75471687STerje Bergstrom  * with this program; if not, write to the Free Software Foundation, Inc.,
20*75471687STerje Bergstrom  * 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
21*75471687STerje Bergstrom  */
22*75471687STerje Bergstrom 
23*75471687STerje Bergstrom #undef TRACE_SYSTEM
24*75471687STerje Bergstrom #define TRACE_SYSTEM host1x
25*75471687STerje Bergstrom 
26*75471687STerje Bergstrom #if !defined(_TRACE_HOST1X_H) || defined(TRACE_HEADER_MULTI_READ)
27*75471687STerje Bergstrom #define _TRACE_HOST1X_H
28*75471687STerje Bergstrom 
29*75471687STerje Bergstrom #include <linux/ktime.h>
30*75471687STerje Bergstrom #include <linux/tracepoint.h>
31*75471687STerje Bergstrom 
32*75471687STerje Bergstrom DECLARE_EVENT_CLASS(host1x,
33*75471687STerje Bergstrom 	TP_PROTO(const char *name),
34*75471687STerje Bergstrom 	TP_ARGS(name),
35*75471687STerje Bergstrom 	TP_STRUCT__entry(__field(const char *, name)),
36*75471687STerje Bergstrom 	TP_fast_assign(__entry->name = name;),
37*75471687STerje Bergstrom 	TP_printk("name=%s", __entry->name)
38*75471687STerje Bergstrom );
39*75471687STerje Bergstrom 
40*75471687STerje Bergstrom TRACE_EVENT(host1x_syncpt_load_min,
41*75471687STerje Bergstrom 	TP_PROTO(u32 id, u32 val),
42*75471687STerje Bergstrom 
43*75471687STerje Bergstrom 	TP_ARGS(id, val),
44*75471687STerje Bergstrom 
45*75471687STerje Bergstrom 	TP_STRUCT__entry(
46*75471687STerje Bergstrom 		__field(u32, id)
47*75471687STerje Bergstrom 		__field(u32, val)
48*75471687STerje Bergstrom 	),
49*75471687STerje Bergstrom 
50*75471687STerje Bergstrom 	TP_fast_assign(
51*75471687STerje Bergstrom 		__entry->id = id;
52*75471687STerje Bergstrom 		__entry->val = val;
53*75471687STerje Bergstrom 	),
54*75471687STerje Bergstrom 
55*75471687STerje Bergstrom 	TP_printk("id=%d, val=%d", __entry->id, __entry->val)
56*75471687STerje Bergstrom );
57*75471687STerje Bergstrom 
58*75471687STerje Bergstrom #endif /*  _TRACE_HOST1X_H */
59*75471687STerje Bergstrom 
60*75471687STerje Bergstrom /* This part must be outside protection */
61*75471687STerje Bergstrom #include <trace/define_trace.h>
62