1 /* 2 * Allwinner SoCs g2d driver. 3 * 4 * Copyright (C) 2020 Allwinner. 5 * 6 * This file is licensed under the terms of the GNU General Public 7 * License version 2. This program is licensed "as is" without any 8 * warranty of any kind, whether express or implied. 9 */ 10 11 #undef TRACE_SYSTEM 12 #define TRACE_INCLUDE_PATH ./g2d_legacy/ 13 #define TRACE_SYSTEM g2d_trace 14 15 #if !defined(_TRACE_G2D_H) || defined(TRACE_HEADER_MULTI_READ) 16 #define _TRACE_G2D_H 17 18 #include <linux/tracepoint.h> 19 20 TRACE_EVENT(g2d_tracing, 21 TP_PROTO(int pid, const char *name, bool trace_begin), 22 TP_ARGS(pid, name, trace_begin), 23 TP_STRUCT__entry( 24 __field(int, pid) 25 __string(trace_name, name) 26 __field(bool, trace_begin) 27 ), 28 TP_fast_assign( 29 __entry->pid = pid; 30 __assign_str(trace_name, name); 31 __entry->trace_begin = trace_begin; 32 ), 33 34 TP_printk("%s|%d|%s", __entry->trace_begin ? "B" : "E", 35 __entry->pid, __get_str(trace_name)) 36 ); 37 38 #define G2D_TRACE_END(name) trace_g2d_tracing(current->tgid, name, 0) 39 #define G2D_TRACE_BEGIN(name) trace_g2d_tracing(current->tgid, name, 1) 40 #define G2D_TRACE_FUNC() G2D_TRACE_BEGIN(__func__) 41 42 #endif 43 44 /* This part must be outside protection */ 45 #include <trace/define_trace.h> 46