1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Support Camera Imaging tracer core.
4  *
5  * Copyright (c) 2013 Intel Corporation. All Rights Reserved.
6  */
7 #undef TRACE_SYSTEM
8 #define TRACE_SYSTEM atomisp
9 
10 #if !defined(ATOMISP_TRACE_EVENT_H) || defined(TRACE_HEADER_MULTI_READ)
11 #define ATOMISP_TRACE_EVENT_H
12 
13 #include <linux/tracepoint.h>
14 #include <linux/string.h>
15 TRACE_EVENT(camera_meminfo,
16 
17 	    TP_PROTO(const char *name, int uptr_size, int counter, int sys_size,
18 		     int sys_res_size, int cam_sys_use, int cam_dyc_use,
19 		     int cam_res_use),
20 
21 	    TP_ARGS(name, uptr_size, counter, sys_size, sys_res_size, cam_sys_use,
22 		    cam_dyc_use, cam_res_use),
23 
24 	    TP_STRUCT__entry(
25 		__array(char, name, 24)
26 		__field(int, uptr_size)
27 		__field(int, counter)
28 		__field(int, sys_size)
29 		__field(int, sys_res_size)
30 		__field(int, cam_res_use)
31 		__field(int, cam_dyc_use)
32 		__field(int, cam_sys_use)
33 	    ),
34 
35 	    TP_fast_assign(
36 		strscpy(__entry->name, name, 24);
37 		__entry->uptr_size = uptr_size;
38 		__entry->counter = counter;
39 		__entry->sys_size = sys_size;
40 		__entry->sys_res_size = sys_res_size;
41 		__entry->cam_res_use = cam_res_use;
42 		__entry->cam_dyc_use = cam_dyc_use;
43 		__entry->cam_sys_use = cam_sys_use;
44 	    ),
45 
46 	    TP_printk(
47 		"<%s> User ptr memory:%d pages,\tISP private memory used:%d pages:\tsysFP system size:%d,\treserved size:%d\tcamFP sysUse:%d,\tdycUse:%d,\tresUse:%d.\n",
48 		__entry->name, __entry->uptr_size, __entry->counter,
49 		__entry->sys_size, __entry->sys_res_size, __entry->cam_sys_use,
50 		__entry->cam_dyc_use, __entry->cam_res_use)
51 	   );
52 
53 TRACE_EVENT(camera_debug,
54 
55 	    TP_PROTO(const char *name, char *info, const int line),
56 
57 	    TP_ARGS(name, info, line),
58 
59 	    TP_STRUCT__entry(
60 		__array(char, name, 24)
61 		__array(char, info, 24)
62 		__field(int, line)
63 	    ),
64 
65 	    TP_fast_assign(
66 		strscpy(__entry->name, name, 24);
67 		strscpy(__entry->info, info, 24);
68 		__entry->line = line;
69 	    ),
70 
71 	    TP_printk("<%s>-<%d> %s\n", __entry->name, __entry->line,
72 		      __entry->info)
73 	   );
74 
75 TRACE_EVENT(ipu_cstate,
76 
77 	    TP_PROTO(int cstate),
78 
79 	    TP_ARGS(cstate),
80 
81 	    TP_STRUCT__entry(
82 		__field(int, cstate)
83 	    ),
84 
85 	    TP_fast_assign(
86 		__entry->cstate = cstate;
87 	    ),
88 
89 	    TP_printk("cstate=%d", __entry->cstate)
90 	   );
91 
92 TRACE_EVENT(ipu_pstate,
93 
94 	    TP_PROTO(int freq, int util),
95 
96 	    TP_ARGS(freq, util),
97 
98 	    TP_STRUCT__entry(
99 		__field(int, freq)
100 		__field(int, util)
101 	    ),
102 
103 	    TP_fast_assign(
104 		__entry->freq = freq;
105 		__entry->util = util;
106 	    ),
107 
108 	    TP_printk("freq=%d util=%d", __entry->freq, __entry->util)
109 	   );
110 #endif
111 
112 #undef TRACE_INCLUDE_PATH
113 #undef TRACE_INCLUDE_FILE
114 #define TRACE_INCLUDE_PATH .
115 #define TRACE_INCLUDE_FILE   atomisp_trace_event
116 /* This part must be outside protection */
117 #include <trace/define_trace.h>
118