summaryrefslogtreecommitdiffstats
path: root/include/trace/events
diff options
context:
space:
mode:
authorShridhar Rasal <srasal@nvidia.com>2016-04-15 06:17:27 -0400
committerShridhar Rasal <srasal@nvidia.com>2016-04-16 23:56:36 -0400
commit3dd37a11274b6a5332bf065aa95b1949f2b4da28 (patch)
treec2cf7c389d37b8ddb82f90a8ec50e6b17a9a57c5 /include/trace/events
parentfed9d249fc3908947f6f5dcc75511b3e2a734f15 (diff)
include: trace: move nvhost trace files kernel-nvhost
- this moves nvhost trace events include file to kernel-nvhost [25a8902] <Deepak Nibade> video: tegra: host: deprecate priority support [520d8c2] <Arto Merilainen> video: tegra: host: Improve debugging traces [1c96a92] <Sam Payne> video: tegra: host: remove multiple powergate ids [cd95145] <Shridhar Rasal> video: tegra: host: add traces for actmon load [68e0b2d] <Kevin Huang> video: tegra: host: add trace event for acm [f949d24] <Amit Sharma> video: tegra: host: add trace events for map/unmap [512fb28] <Antti P Miettinen> video: tegra: host: Fix a compile warning [6d64315] <Arto Merilainen> video: tegra: host: gk20a: Add own trace events [f16467e] <Terje Bergstrom> video: tegra: host: Fix compile warnings [38d5198] <Terje Bergstrom> video: tegra: host: Reimplement nvmap_pin in nvhost [e540114] <Ken Adams> video: tegra: host: add ftrace events for nvhost_as [6b717a6] <Terje Bergstrom> video: tegra: host: Add gpfifo tracing [742e520] <Ken Adams> video: tegra: add gpfifo submit trace event [66dba06] <Terje Bergstrom> video: tegra: host: Allow setting save/restore buf [9e283d5] <Terje Bergstrom> video: tegra: host: New submit interface [a1bb1a1] <Mayuresh Kulkarni> video: tegra: host: add per device module [9ad087c] <Terje Bergstrom> video: tegra: host: Add trace events for ACM [7757c5c] <Terje Bergstrom> video: tegra: host: Throttle lower priority jobs [4f82d55] <Terje Bergstrom> video: tegra: host: Replace nvmap structs with own [f36f1d0] <Mayuresh Kulkarni> video: tegra: host: rewrite nvhost_job_pin/unpin APIs [398641b] <Terje Bergstrom> video: tegra: host: Add syncpt trace events [e7ff745] <Terje Bergstrom> video: tegra: host: Add context switch to trace dump [c400f95] <Terje Bergstrom> video: tegra: host: Split submit into subfunctions [f599525] <Terje Bergstrom> video: tegra: host: Add syncpt value to traces [57dac66] <Terje Bergstrom> video: tegra: host: Support for right shift on reloc patches [c0ae81d] <Terje Bergstrom> video: tegra: host: Add syncpt and cmdbuf to trace [1bb6a7f] <Terje Bergstrom> nvhost: Move include files to kernel/include Change-Id: Ia6d222666a3581978bd6b8d4294d5cbaaa037c1b Signed-off-by: Shridhar Rasal <srasal@nvidia.com> Reviewed-on: http://git-master/r/1127346 Reviewed-by: Arto Merilainen <amerilainen@nvidia.com> GVS: Gerrit_Virtual_Submit
Diffstat (limited to 'include/trace/events')
-rw-r--r--include/trace/events/nvhost.h1117
1 files changed, 1117 insertions, 0 deletions
diff --git a/include/trace/events/nvhost.h b/include/trace/events/nvhost.h
new file mode 100644
index 000000000..a6ad0383b
--- /dev/null
+++ b/include/trace/events/nvhost.h
@@ -0,0 +1,1117 @@
1/*
2 * Nvhost event logging to ftrace.
3 *
4 * Copyright (c) 2010-2016, NVIDIA Corporation. All rights reserved.
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
14 * more details.
15 *
16 * You should have received a copy of the GNU General Public License along
17 * with this program; if not, write to the Free Software Foundation, Inc.,
18 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
19 */
20
21#undef TRACE_SYSTEM
22#define TRACE_SYSTEM nvhost
23
24#if !defined(_TRACE_NVHOST_H) || defined(TRACE_HEADER_MULTI_READ)
25#define _TRACE_NVHOST_H
26
27#include <linux/ktime.h>
28#include <linux/tracepoint.h>
29
30DECLARE_EVENT_CLASS(nvhost,
31 TP_PROTO(const char *name),
32 TP_ARGS(name),
33 TP_STRUCT__entry(__field(const char *, name)),
34 TP_fast_assign(__entry->name = name;),
35 TP_printk("name=%s", __entry->name)
36);
37
38DEFINE_EVENT(nvhost, nvhost_channel_open,
39 TP_PROTO(const char *name),
40 TP_ARGS(name)
41);
42
43DEFINE_EVENT(nvhost, nvhost_channel_release,
44 TP_PROTO(const char *name),
45 TP_ARGS(name)
46);
47
48DEFINE_EVENT(nvhost, nvhost_ioctl_channel_flush,
49 TP_PROTO(const char *name),
50 TP_ARGS(name)
51);
52
53TRACE_EVENT(nvhost_channel_write_submit,
54 TP_PROTO(const char *name, ssize_t count, u32 cmdbufs, u32 relocs,
55 u32 syncpt_id, u32 syncpt_incrs),
56
57 TP_ARGS(name, count, cmdbufs, relocs, syncpt_id, syncpt_incrs),
58
59 TP_STRUCT__entry(
60 __field(const char *, name)
61 __field(ssize_t, count)
62 __field(u32, cmdbufs)
63 __field(u32, relocs)
64 __field(u32, syncpt_id)
65 __field(u32, syncpt_incrs)
66 ),
67
68 TP_fast_assign(
69 __entry->name = name;
70 __entry->count = count;
71 __entry->cmdbufs = cmdbufs;
72 __entry->relocs = relocs;
73 __entry->syncpt_id = syncpt_id;
74 __entry->syncpt_incrs = syncpt_incrs;
75 ),
76
77 TP_printk("name=%s, count=%zd, cmdbufs=%u, relocs=%u, syncpt_id=%u, syncpt_incrs=%u",
78 __entry->name, __entry->count, __entry->cmdbufs,
79 __entry->relocs, __entry->syncpt_id, __entry->syncpt_incrs)
80);
81
82TRACE_EVENT(nvhost_channel_submit,
83 TP_PROTO(const char *name, u32 cmdbufs, u32 relocs, u32 waitchks,
84 u32 syncpt_id, u32 syncpt_incrs),
85
86 TP_ARGS(name, cmdbufs, relocs, waitchks, syncpt_id, syncpt_incrs),
87
88 TP_STRUCT__entry(
89 __field(const char *, name)
90 __field(u32, cmdbufs)
91 __field(u32, relocs)
92 __field(u32, waitchks)
93 __field(u32, syncpt_id)
94 __field(u32, syncpt_incrs)
95 ),
96
97 TP_fast_assign(
98 __entry->name = name;
99 __entry->cmdbufs = cmdbufs;
100 __entry->relocs = relocs;
101 __entry->waitchks = waitchks;
102 __entry->syncpt_id = syncpt_id;
103 __entry->syncpt_incrs = syncpt_incrs;
104 ),
105
106 TP_printk("name=%s, cmdbufs=%u, relocs=%u, waitchks=%d,"
107 "syncpt_id=%u, syncpt_incrs=%u",
108 __entry->name, __entry->cmdbufs, __entry->relocs, __entry->waitchks,
109 __entry->syncpt_id, __entry->syncpt_incrs)
110);
111
112TRACE_EVENT(nvhost_ioctl_channel_submit,
113 TP_PROTO(const char *name, u32 version, u32 cmdbufs, u32 relocs,
114 u32 waitchks, u32 syncpt_id, u32 syncpt_incrs),
115
116 TP_ARGS(name, version, cmdbufs, relocs, waitchks,
117 syncpt_id, syncpt_incrs),
118
119 TP_STRUCT__entry(
120 __field(const char *, name)
121 __field(u32, version)
122 __field(u32, cmdbufs)
123 __field(u32, relocs)
124 __field(u32, waitchks)
125 __field(u32, syncpt_id)
126 __field(u32, syncpt_incrs)
127 ),
128
129 TP_fast_assign(
130 __entry->name = name;
131 __entry->version = version;
132 __entry->cmdbufs = cmdbufs;
133 __entry->relocs = relocs;
134 __entry->waitchks = waitchks;
135 __entry->syncpt_id = syncpt_id;
136 __entry->syncpt_incrs = syncpt_incrs;
137 ),
138
139 TP_printk("name=%s, version=%u, cmdbufs=%u, relocs=%u, waitchks=%u, syncpt_id=%u, syncpt_incrs=%u",
140 __entry->name, __entry->version, __entry->cmdbufs, __entry->relocs,
141 __entry->waitchks, __entry->syncpt_id, __entry->syncpt_incrs)
142);
143
144TRACE_EVENT(nvhost_channel_write_cmdbuf,
145 TP_PROTO(const char *name, u32 mem_id,
146 u32 words, u32 offset),
147
148 TP_ARGS(name, mem_id, words, offset),
149
150 TP_STRUCT__entry(
151 __field(const char *, name)
152 __field(u32, mem_id)
153 __field(u32, words)
154 __field(u32, offset)
155 ),
156
157 TP_fast_assign(
158 __entry->name = name;
159 __entry->mem_id = mem_id;
160 __entry->words = words;
161 __entry->offset = offset;
162 ),
163
164 TP_printk("name=%s, mem_id=%08x, words=%u, offset=%d",
165 __entry->name, __entry->mem_id,
166 __entry->words, __entry->offset)
167);
168
169DECLARE_EVENT_CLASS(nvhost_channel_map_class,
170 TP_PROTO(const char *devname, int chid,
171 int num_mapped_chs, void *identifier),
172
173 TP_ARGS(devname, chid, num_mapped_chs, identifier),
174
175 TP_STRUCT__entry(
176 __field(const char *, devname)
177 __field(int, chid)
178 __field(int, num_mapped_chs)
179 __field(void *, identifier)
180 ),
181
182 TP_fast_assign(
183 __entry->devname = devname;
184 __entry->chid = chid;
185 __entry->num_mapped_chs = num_mapped_chs;
186 __entry->identifier = identifier;
187 ),
188
189 TP_printk("device=%s, channel_id=%d, num_mapped_chs=%d, identifier=%p",
190 __entry->devname, __entry->chid, __entry->num_mapped_chs, __entry->identifier)
191);
192
193DEFINE_EVENT(nvhost_channel_map_class, nvhost_channel_remap,
194 TP_PROTO(const char *devname, int chid,
195 int num_mapped_chs, void *identifier),
196 TP_ARGS(devname, chid, num_mapped_chs, identifier)
197);
198
199DEFINE_EVENT(nvhost_channel_map_class, nvhost_channel_map,
200 TP_PROTO(const char *devname, int chid,
201 int num_mapped_chs, void *identifier),
202 TP_ARGS(devname, chid, num_mapped_chs, identifier)
203);
204
205DEFINE_EVENT(nvhost, nvhost_vm_init_device,
206 TP_PROTO(const char *name),
207 TP_ARGS(name)
208);
209
210DECLARE_EVENT_CLASS(nvhost_vm,
211 TP_PROTO(void *vm),
212 TP_ARGS(vm),
213 TP_STRUCT__entry(__field(void *, vm)),
214 TP_fast_assign(__entry->vm = vm;),
215 TP_printk("vm=%p", __entry->vm)
216);
217
218DEFINE_EVENT(nvhost_vm, nvhost_vm_get,
219 TP_PROTO(void *vm),
220 TP_ARGS(vm)
221);
222
223DEFINE_EVENT(nvhost_vm, nvhost_vm_put,
224 TP_PROTO(void *vm),
225 TP_ARGS(vm)
226);
227
228DEFINE_EVENT(nvhost_vm, nvhost_vm_deinit,
229 TP_PROTO(void *vm),
230 TP_ARGS(vm)
231);
232
233TRACE_EVENT(nvhost_vm_get_id,
234 TP_PROTO(void *vm, int id),
235
236 TP_ARGS(vm, id),
237
238 TP_STRUCT__entry(
239 __field(void *, vm)
240 __field(int, id)
241 ),
242
243 TP_fast_assign(
244 __entry->vm = vm;
245 __entry->id = id;
246 ),
247
248 TP_printk("vm=%p, id=%d", __entry->vm, __entry->id)
249);
250
251DECLARE_EVENT_CLASS(nvhost_vm_allocate_end,
252 TP_PROTO(const char *devname, void *identifier, void *vm,
253 const char *ctx_devname),
254
255 TP_ARGS(devname, identifier, vm, ctx_devname),
256
257 TP_STRUCT__entry(
258 __field(const char *, devname)
259 __field(void *, identifier)
260 __field(void *, vm)
261 __field(const char *, ctx_devname)
262 ),
263
264 TP_fast_assign(
265 __entry->devname = devname;
266 __entry->identifier = identifier;
267 __entry->vm = vm;
268 __entry->ctx_devname = ctx_devname;
269 ),
270
271 TP_printk("device=%s, identifier=%p, vm=%p, ctx_device=%s",
272 __entry->devname, __entry->identifier,
273 __entry->vm, __entry->ctx_devname)
274);
275
276DEFINE_EVENT(nvhost_vm_allocate_end, nvhost_vm_allocate_reuse,
277 TP_PROTO(const char *devname, void *identifier, void *vm,
278 const char *ctx_devname),
279 TP_ARGS(devname, identifier, vm, ctx_devname)
280);
281
282DEFINE_EVENT(nvhost_vm_allocate_end, nvhost_vm_allocate_done,
283 TP_PROTO(const char *devname, void *identifier, void *vm,
284 const char *ctx_devname),
285 TP_ARGS(devname, identifier, vm, ctx_devname)
286);
287
288TRACE_EVENT(nvhost_vm_allocate,
289 TP_PROTO(const char *devname, void *identifier),
290
291 TP_ARGS(devname, identifier),
292
293 TP_STRUCT__entry(
294 __field(const char *, devname)
295 __field(void *, identifier)
296 ),
297
298 TP_fast_assign(
299 __entry->devname = devname;
300 __entry->identifier = identifier;
301 ),
302
303 TP_printk("device=%s, identifier=%p",
304 __entry->devname, __entry->identifier)
305);
306
307TRACE_EVENT(nvhost_channel_unmap_locked,
308 TP_PROTO(const char *devname, int chid,
309 int num_mapped_chs),
310
311 TP_ARGS(devname, chid, num_mapped_chs),
312
313 TP_STRUCT__entry(
314 __field(const char *, devname)
315 __field(int, chid)
316 __field(int, num_mapped_chs)
317 ),
318
319 TP_fast_assign(
320 __entry->devname = devname;
321 __entry->chid = chid;
322 __entry->num_mapped_chs = num_mapped_chs;
323 ),
324
325 TP_printk("device=%s, channel_id=%d, num_mapped_chs=%d",
326 __entry->devname, __entry->chid, __entry->num_mapped_chs)
327);
328
329TRACE_EVENT(nvhost_putchannel,
330 TP_PROTO(const char *devname, int refcount, int chid),
331
332 TP_ARGS(devname, refcount, chid),
333
334 TP_STRUCT__entry(
335 __field(const char *, devname)
336 __field(int, refcount)
337 __field(int, chid)
338 ),
339
340 TP_fast_assign(
341 __entry->devname = devname;
342 __entry->refcount = refcount;
343 __entry->chid = chid;
344 ),
345
346 TP_printk("dev_name=%s, refcount=%d, chid=%d",
347 __entry->devname, __entry->refcount, __entry->chid)
348);
349
350TRACE_EVENT(nvhost_getchannel,
351 TP_PROTO(const char *devname, int refcount, int chid),
352
353 TP_ARGS(devname, refcount, chid),
354
355 TP_STRUCT__entry(
356 __field(const char *, devname)
357 __field(int, refcount)
358 __field(int, chid)
359 ),
360
361 TP_fast_assign(
362 __entry->devname = devname;
363 __entry->refcount = refcount;
364 __entry->chid = chid;
365 ),
366
367 TP_printk("dev_name=%s, refcount=%d, chid=%d",
368 __entry->devname, __entry->refcount, __entry->chid)
369);
370
371TRACE_EVENT(nvhost_cdma_end,
372 TP_PROTO(const char *name),
373
374 TP_ARGS(name),
375
376 TP_STRUCT__entry(
377 __field(const char *, name)
378 ),
379
380 TP_fast_assign(
381 __entry->name = name;
382 ),
383
384 TP_printk("name=%s", __entry->name)
385);
386
387TRACE_EVENT(nvhost_cdma_flush,
388 TP_PROTO(const char *name, int timeout),
389
390 TP_ARGS(name, timeout),
391
392 TP_STRUCT__entry(
393 __field(const char *, name)
394 __field(int, timeout)
395 ),
396
397 TP_fast_assign(
398 __entry->name = name;
399 __entry->timeout = timeout;
400 ),
401
402 TP_printk("name=%s, timeout=%d",
403 __entry->name, __entry->timeout)
404);
405
406TRACE_EVENT(nvhost_cdma_push,
407 TP_PROTO(const char *name, u32 op1, u32 op2),
408
409 TP_ARGS(name, op1, op2),
410
411 TP_STRUCT__entry(
412 __field(const char *, name)
413 __field(u32, op1)
414 __field(u32, op2)
415 ),
416
417 TP_fast_assign(
418 __entry->name = name;
419 __entry->op1 = op1;
420 __entry->op2 = op2;
421 ),
422
423 TP_printk("name=%s, op1=%08x, op2=%08x",
424 __entry->name, __entry->op1, __entry->op2)
425);
426
427TRACE_EVENT(nvhost_cdma_push_gather,
428 TP_PROTO(const char *name, u32 mem_id,
429 u32 words, u32 offset, void *cmdbuf),
430
431 TP_ARGS(name, mem_id, words, offset, cmdbuf),
432
433 TP_STRUCT__entry(
434 __field(const char *, name)
435 __field(u32, mem_id)
436 __field(u32, words)
437 __field(u32, offset)
438 __field(bool, cmdbuf)
439 __dynamic_array(u32, cmdbuf, words)
440 ),
441
442 TP_fast_assign(
443 if (cmdbuf) {
444 memcpy(__get_dynamic_array(cmdbuf), cmdbuf+offset,
445 words * sizeof(u32));
446 }
447 __entry->cmdbuf = cmdbuf;
448 __entry->name = name;
449 __entry->mem_id = mem_id;
450 __entry->words = words;
451 __entry->offset = offset;
452 ),
453
454 TP_printk("name=%s, mem_id=%08x, words=%u, offset=%d, contents=[%s]",
455 __entry->name, __entry->mem_id,
456 __entry->words, __entry->offset,
457 __print_hex(__get_dynamic_array(cmdbuf),
458 __entry->cmdbuf ? __entry->words * 4 : 0))
459);
460
461TRACE_EVENT(nvhost_channel_write_reloc,
462 TP_PROTO(const char *name, u32 cmdbuf_mem, u32 cmdbuf_offset,
463 u32 target, u32 target_offset),
464
465 TP_ARGS(name, cmdbuf_mem, cmdbuf_offset, target, target_offset),
466
467 TP_STRUCT__entry(
468 __field(const char *, name)
469 __field(u32, cmdbuf_mem)
470 __field(u32, cmdbuf_offset)
471 __field(u32, target)
472 __field(u32, target_offset)
473 ),
474
475 TP_fast_assign(
476 __entry->name = name;
477 __entry->cmdbuf_mem = cmdbuf_mem;
478 __entry->cmdbuf_offset = cmdbuf_offset;
479 __entry->target = target;
480 __entry->target_offset = target_offset;
481 ),
482
483 TP_printk("name=%s, cmdbuf_mem=%08x, cmdbuf_offset=%04x, target=%08x, target_offset=%04x",
484 __entry->name, __entry->cmdbuf_mem, __entry->cmdbuf_offset,
485 __entry->target, __entry->target_offset)
486);
487
488TRACE_EVENT(nvhost_channel_write_waitchks,
489 TP_PROTO(const char *name, u32 waitchks),
490
491 TP_ARGS(name, waitchks),
492
493 TP_STRUCT__entry(
494 __field(const char *, name)
495 __field(u32, waitchks)
496 ),
497
498 TP_fast_assign(
499 __entry->name = name;
500 __entry->waitchks = waitchks;
501 ),
502
503 TP_printk("name=%s, waitchks=%u",
504 __entry->name, __entry->waitchks)
505);
506
507TRACE_EVENT(nvhost_channel_context_save,
508 TP_PROTO(const char *name, void *ctx),
509
510 TP_ARGS(name, ctx),
511
512 TP_STRUCT__entry(
513 __field(const char *, name)
514 __field(void*, ctx)
515 ),
516
517 TP_fast_assign(
518 __entry->name = name;
519 __entry->ctx = ctx;
520 ),
521
522 TP_printk("name=%s, ctx=%p",
523 __entry->name, __entry->ctx)
524);
525
526TRACE_EVENT(nvhost_channel_context_restore,
527 TP_PROTO(const char *name, void *ctx),
528
529 TP_ARGS(name, ctx),
530
531 TP_STRUCT__entry(
532 __field(const char *, name)
533 __field(void*, ctx)
534 ),
535
536 TP_fast_assign(
537 __entry->name = name;
538 __entry->ctx = ctx;
539 ),
540
541 TP_printk("name=%s, ctx=%p",
542 __entry->name, __entry->ctx)
543);
544
545TRACE_EVENT(nvhost_ioctl_channel_set_ctxswitch,
546 TP_PROTO(const char *name, void *ctx,
547 u32 save_mem, u32 save_offset, u32 save_words,
548 u32 restore_mem, u32 restore_offset, u32 restore_words,
549 u32 syncpt_id, u32 waitbase, u32 save_incrs, u32 restore_incrs),
550
551 TP_ARGS(name, ctx,
552 save_mem, save_offset, save_words,
553 restore_mem, restore_offset, restore_words,
554 syncpt_id, waitbase, save_incrs, restore_incrs),
555
556 TP_STRUCT__entry(
557 __field(const char *, name)
558 __field(void *, ctx)
559 __field(u32, save_mem)
560 __field(u32, save_offset)
561 __field(u32, save_words)
562 __field(u32, restore_mem)
563 __field(u32, restore_offset)
564 __field(u32, restore_words)
565 __field(u32, syncpt_id)
566 __field(u32, waitbase)
567 __field(u32, save_incrs)
568 __field(u32, restore_incrs)
569 ),
570
571 TP_fast_assign(
572 __entry->name = name;
573 __entry->ctx = ctx;
574 __entry->save_mem = save_mem;
575 __entry->save_offset = save_offset;
576 __entry->save_words = save_words;
577 __entry->restore_mem = restore_mem;
578 __entry->restore_offset = restore_offset;
579 __entry->restore_words = restore_words;
580 __entry->syncpt_id = syncpt_id;
581 __entry->waitbase = waitbase;
582 __entry->save_incrs = save_incrs;
583 __entry->restore_incrs = restore_incrs;
584 ),
585
586 TP_printk("name=%s, ctx=%p, save_mem=%08x, save_offset=%d, save_words=%d, restore_mem=%08x, restore_offset=%d, restore_words=%d, syncpt_id=%d, waitbase=%d, save_incrs=%d, restore_incrs=%d",
587 __entry->name, __entry->ctx,
588 __entry->save_mem, __entry->save_offset, __entry->save_words,
589 __entry->restore_mem, __entry->restore_offset, __entry->restore_words,
590 __entry->syncpt_id, __entry->waitbase,
591 __entry->save_incrs, __entry->restore_incrs)
592);
593TRACE_EVENT(nvhost_ctrlopen,
594 TP_PROTO(const char *name),
595 TP_ARGS(name),
596 TP_STRUCT__entry(
597 __field(const char *, name)
598 ),
599 TP_fast_assign(
600 __entry->name = name
601 ),
602 TP_printk("name=%s", __entry->name)
603);
604
605TRACE_EVENT(nvhost_ctrlrelease,
606 TP_PROTO(const char *name),
607 TP_ARGS(name),
608 TP_STRUCT__entry(
609 __field(const char *, name)
610 ),
611 TP_fast_assign(
612 __entry->name = name
613 ),
614 TP_printk("name=%s", __entry->name)
615);
616
617TRACE_EVENT(nvhost_ioctl_ctrl_module_mutex,
618 TP_PROTO(u32 lock, u32 id),
619
620 TP_ARGS(lock, id),
621
622 TP_STRUCT__entry(
623 __field(u32, lock);
624 __field(u32, id);
625 ),
626
627 TP_fast_assign(
628 __entry->lock = lock;
629 __entry->id = id;
630 ),
631
632 TP_printk("lock=%u, id=%d",
633 __entry->lock, __entry->id)
634 );
635
636TRACE_EVENT(nvhost_ioctl_ctrl_syncpt_incr,
637 TP_PROTO(u32 id),
638
639 TP_ARGS(id),
640
641 TP_STRUCT__entry(
642 __field(u32, id);
643 ),
644
645 TP_fast_assign(
646 __entry->id = id;
647 ),
648
649 TP_printk("id=%d", __entry->id)
650);
651
652TRACE_EVENT(nvhost_ioctl_ctrl_syncpt_read,
653 TP_PROTO(u32 id, u32 value),
654
655 TP_ARGS(id, value),
656
657 TP_STRUCT__entry(
658 __field(u32, id);
659 __field(u32, value);
660 ),
661
662 TP_fast_assign(
663 __entry->id = id;
664 __entry->value = value;
665 ),
666
667 TP_printk("id=%d, value=%d", __entry->id, __entry->value)
668);
669
670TRACE_EVENT(nvhost_ioctl_ctrl_syncpt_wait,
671 TP_PROTO(u32 id, u32 threshold, s32 timeout, u32 value, int err),
672
673 TP_ARGS(id, threshold, timeout, value, err),
674
675 TP_STRUCT__entry(
676 __field(u32, id)
677 __field(u32, threshold)
678 __field(s32, timeout)
679 __field(u32, value)
680 __field(int, err)
681 ),
682
683 TP_fast_assign(
684 __entry->id = id;
685 __entry->threshold = threshold;
686 __entry->timeout = timeout;
687 __entry->value = value;
688 __entry->err = err;
689 ),
690
691 TP_printk("id=%u, threshold=%u, timeout=%d, value=%u, err=%d",
692 __entry->id, __entry->threshold, __entry->timeout,
693 __entry->value, __entry->err)
694);
695
696TRACE_EVENT(nvhost_ioctl_channel_module_regrdwr,
697 TP_PROTO(u32 id, u32 num_offsets, bool write),
698
699 TP_ARGS(id, num_offsets, write),
700
701 TP_STRUCT__entry(
702 __field(u32, id)
703 __field(u32, num_offsets)
704 __field(bool, write)
705 ),
706
707 TP_fast_assign(
708 __entry->id = id;
709 __entry->num_offsets = num_offsets;
710 __entry->write = write;
711 ),
712
713 TP_printk("id=%u, num_offsets=%u, write=%d",
714 __entry->id, __entry->num_offsets, __entry->write)
715);
716
717TRACE_EVENT(nvhost_ioctl_ctrl_module_regrdwr,
718 TP_PROTO(u32 id, u32 num_offsets, bool write),
719
720 TP_ARGS(id, num_offsets, write),
721
722 TP_STRUCT__entry(
723 __field(u32, id)
724 __field(u32, num_offsets)
725 __field(bool, write)
726 ),
727
728 TP_fast_assign(
729 __entry->id = id;
730 __entry->num_offsets = num_offsets;
731 __entry->write = write;
732 ),
733
734 TP_printk("id=%u, num_offsets=%u, write=%d",
735 __entry->id, __entry->num_offsets, __entry->write)
736);
737
738TRACE_EVENT(nvhost_channel_submitted,
739 TP_PROTO(const char *name, u32 syncpt_base, u32 syncpt_max),
740
741 TP_ARGS(name, syncpt_base, syncpt_max),
742
743 TP_STRUCT__entry(
744 __field(const char *, name)
745 __field(u32, syncpt_base)
746 __field(u32, syncpt_max)
747 ),
748
749 TP_fast_assign(
750 __entry->name = name;
751 __entry->syncpt_base = syncpt_base;
752 __entry->syncpt_max = syncpt_max;
753 ),
754
755 TP_printk("name=%s, syncpt_base=%d, syncpt_max=%d",
756 __entry->name, __entry->syncpt_base, __entry->syncpt_max)
757);
758
759TRACE_EVENT(nvhost_channel_submit_complete,
760 TP_PROTO(const char *name, int count, u32 thresh),
761
762 TP_ARGS(name, count, thresh),
763
764 TP_STRUCT__entry(
765 __field(const char *, name)
766 __field(int, count)
767 __field(u32, thresh)
768 ),
769
770 TP_fast_assign(
771 __entry->name = name;
772 __entry->count = count;
773 __entry->thresh = thresh;
774 ),
775
776 TP_printk("name=%s, count=%d, thresh=%d",
777 __entry->name, __entry->count, __entry->thresh)
778);
779
780TRACE_EVENT(nvhost_wait_cdma,
781 TP_PROTO(const char *name, u32 eventid),
782
783 TP_ARGS(name, eventid),
784
785 TP_STRUCT__entry(
786 __field(const char *, name)
787 __field(u32, eventid)
788 ),
789
790 TP_fast_assign(
791 __entry->name = name;
792 __entry->eventid = eventid;
793 ),
794
795 TP_printk("name=%s, event=%d", __entry->name, __entry->eventid)
796);
797
798TRACE_EVENT(nvhost_syncpt_update_min,
799 TP_PROTO(u32 id, u32 val),
800
801 TP_ARGS(id, val),
802
803 TP_STRUCT__entry(
804 __field(u32, id)
805 __field(u32, val)
806 ),
807
808 TP_fast_assign(
809 __entry->id = id;
810 __entry->val = val;
811 ),
812
813 TP_printk("id=%d, val=%d", __entry->id, __entry->val)
814);
815
816TRACE_EVENT(nvhost_syncpt_wait_check,
817 TP_PROTO(u32 mem_id, u32 offset, u32 syncpt_id, u32 thresh, u32 min),
818
819 TP_ARGS(mem_id, offset, syncpt_id, thresh, min),
820
821 TP_STRUCT__entry(
822 __field(u32, mem_id)
823 __field(u32, offset)
824 __field(u32, syncpt_id)
825 __field(u32, thresh)
826 __field(u32, min)
827 ),
828
829 TP_fast_assign(
830 __entry->mem_id = mem_id;
831 __entry->offset = offset;
832 __entry->syncpt_id = syncpt_id;
833 __entry->thresh = thresh;
834 __entry->min = min;
835 ),
836
837 TP_printk("mem_id=%08x, offset=%05x, id=%d, thresh=%d, current=%d",
838 __entry->mem_id, __entry->offset,
839 __entry->syncpt_id, __entry->thresh,
840 __entry->min)
841);
842
843TRACE_EVENT(nvhost_module_set_devfreq_rate,
844 TP_PROTO(const char *devname, const char *clockname,
845 unsigned long rate),
846
847 TP_ARGS(devname, clockname, rate),
848
849 TP_STRUCT__entry(
850 __field(const char *, devname)
851 __field(const char *, clockname)
852 __field(unsigned long, rate)
853 ),
854
855 TP_fast_assign(
856 __entry->devname = devname;
857 __entry->clockname = clockname;
858 __entry->rate = rate;
859 ),
860
861 TP_printk("dev=%s, clock=%s, rate=%ld",
862 __entry->devname, __entry->clockname,
863 __entry->rate)
864);
865
866TRACE_EVENT(nvhost_module_update_rate,
867 TP_PROTO(const char *devname, const char *clockname,
868 unsigned long rate),
869
870 TP_ARGS(devname, clockname, rate),
871
872 TP_STRUCT__entry(
873 __field(const char *, devname)
874 __field(const char *, clockname)
875 __field(unsigned long, rate)
876 ),
877
878 TP_fast_assign(
879 __entry->devname = devname;
880 __entry->clockname = clockname;
881 __entry->rate = rate;
882 ),
883
884 TP_printk("dev=%s, clock=%s, rate=%ld",
885 __entry->devname, __entry->clockname,
886 __entry->rate)
887);
888
889TRACE_EVENT(nvhost_as_dev_open,
890 TP_PROTO(const char *name),
891 TP_ARGS(name),
892 TP_STRUCT__entry(
893 __field(const char *, name)
894 ),
895 TP_fast_assign(
896 __entry->name = name;
897 ),
898 TP_printk("name=%s ", __entry->name)
899);
900
901TRACE_EVENT(nvhost_as_dev_release,
902 TP_PROTO(const char *name),
903 TP_ARGS(name),
904 TP_STRUCT__entry(
905 __field(const char *, name)
906 ),
907 TP_fast_assign(
908 __entry->name = name;
909 ),
910 TP_printk("name=%s ", __entry->name)
911);
912
913
914TRACE_EVENT(nvhost_as_ioctl_bind_channel,
915 TP_PROTO(const char *name),
916 TP_ARGS(name),
917 TP_STRUCT__entry(
918 __field(const char *, name)
919 ),
920 TP_fast_assign(
921 __entry->name = name;
922 ),
923 TP_printk("name=%s ", __entry->name)
924);
925
926
927TRACE_EVENT(nvhost_as_ioctl_alloc_space,
928 TP_PROTO(const char *name),
929 TP_ARGS(name),
930 TP_STRUCT__entry(
931 __field(const char *, name)
932 ),
933 TP_fast_assign(
934 __entry->name = name;
935 ),
936 TP_printk("name=%s ", __entry->name)
937);
938
939TRACE_EVENT(nvhost_as_ioctl_free_space,
940 TP_PROTO(const char *name),
941 TP_ARGS(name),
942 TP_STRUCT__entry(
943 __field(const char *, name)
944 ),
945 TP_fast_assign(
946 __entry->name = name;
947 ),
948 TP_printk("name=%s ", __entry->name)
949);
950
951TRACE_EVENT(nvhost_as_ioctl_map_buffer,
952 TP_PROTO(const char *name),
953 TP_ARGS(name),
954 TP_STRUCT__entry(
955 __field(const char *, name)
956 ),
957 TP_fast_assign(
958 __entry->name = name;
959 ),
960 TP_printk("name=%s ", __entry->name)
961);
962
963TRACE_EVENT(nvhost_as_ioctl_unmap_buffer,
964 TP_PROTO(const char *name),
965 TP_ARGS(name),
966 TP_STRUCT__entry(
967 __field(const char *, name)
968 ),
969 TP_fast_assign(
970 __entry->name = name;
971 ),
972 TP_printk("name=%s ", __entry->name)
973);
974
975TRACE_EVENT(nvhost_module_enable_clk,
976 TP_PROTO(const char *devname, int num_clks),
977
978 TP_ARGS(devname, num_clks),
979
980 TP_STRUCT__entry(
981 __field(const char *, devname)
982 __field(int, num_clks)
983 ),
984
985 TP_fast_assign(
986 __entry->devname = devname;
987 __entry->num_clks = num_clks;
988 ),
989
990 TP_printk("dev=%s, num_clks=%d",
991 __entry->devname, __entry->num_clks)
992);
993
994TRACE_EVENT(nvhost_module_disable_clk,
995 TP_PROTO(const char *devname, int num_clks),
996
997 TP_ARGS(devname, num_clks),
998
999 TP_STRUCT__entry(
1000 __field(const char *, devname)
1001 __field(int, num_clks)
1002 ),
1003
1004 TP_fast_assign(
1005 __entry->devname = devname;
1006 __entry->num_clks = num_clks;
1007 ),
1008
1009 TP_printk("dev=%s, num_clks=%d",
1010 __entry->devname, __entry->num_clks)
1011);
1012
1013TRACE_EVENT(nvhost_module_power_on,
1014 TP_PROTO(const char *devname, int powergate_id),
1015
1016 TP_ARGS(devname, powergate_id),
1017
1018 TP_STRUCT__entry(
1019 __field(const char *, devname)
1020 __field(int, powergate_id)
1021 ),
1022
1023 TP_fast_assign(
1024 __entry->devname = devname;
1025 __entry->powergate_id = powergate_id;
1026 ),
1027
1028 TP_printk("dev=%s, powergate_id=%d",
1029 __entry->devname, __entry->powergate_id)
1030);
1031
1032TRACE_EVENT(nvhost_module_power_off,
1033 TP_PROTO(const char *devname, int powergate_id),
1034
1035 TP_ARGS(devname, powergate_id),
1036
1037 TP_STRUCT__entry(
1038 __field(const char *, devname)
1039 __field(int, powergate_id)
1040 ),
1041
1042 TP_fast_assign(
1043 __entry->devname = devname;
1044 __entry->powergate_id = powergate_id;
1045 ),
1046
1047 TP_printk("dev=%s, powergate_id=%d",
1048 __entry->devname, __entry->powergate_id)
1049);
1050
1051TRACE_EVENT(nvhost_scale_notify,
1052 TP_PROTO(const char *devname,
1053 unsigned long load,
1054 bool busy),
1055
1056 TP_ARGS(devname, load, busy),
1057
1058 TP_STRUCT__entry(
1059 __field(const char *, devname)
1060 __field(unsigned long, load)
1061 __field(bool, busy)
1062 ),
1063
1064 TP_fast_assign(
1065 __entry->devname = devname;
1066 __entry->load = load;
1067 __entry->busy = busy;
1068 ),
1069
1070 TP_printk("dev=%s load=%ld, busy=%d",
1071 __entry->devname, __entry->load,
1072 __entry->busy)
1073);
1074
1075DECLARE_EVENT_CLASS(nvhost_map,
1076 TP_PROTO(const char *devname, void *handle, int size,
1077 dma_addr_t iova),
1078
1079 TP_ARGS(devname, handle, size, iova),
1080
1081 TP_STRUCT__entry(
1082 __field(const char *, devname)
1083 __field(void *, handle)
1084 __field(int, size)
1085 __field(dma_addr_t, iova)
1086 ),
1087
1088 TP_fast_assign(
1089 __entry->devname = devname;
1090 __entry->handle = handle;
1091 __entry->size = size;
1092 __entry->iova = iova;
1093 ),
1094
1095 TP_printk("dev=%s, handle=%p, size=%d, iova=%08llx",
1096 __entry->devname, __entry->handle, __entry->size,
1097 (u64)__entry->iova)
1098);
1099
1100DEFINE_EVENT(nvhost_map, nvhost_nvmap_pin,
1101 TP_PROTO(const char *devname, void *handle, int size,
1102 dma_addr_t iova),
1103
1104 TP_ARGS(devname, handle, size, iova)
1105);
1106
1107DEFINE_EVENT(nvhost_map, nvhost_nvmap_unpin,
1108 TP_PROTO(const char *devname, void *handle, int size,
1109 dma_addr_t iova),
1110
1111 TP_ARGS(devname, handle, size, iova)
1112);
1113
1114#endif /* _TRACE_NVHOST_H */
1115
1116/* This part must be outside protection */
1117#include <trace/define_trace.h>