lima_trace.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. /* SPDX-License-Identifier: GPL-2.0 OR MIT */
  2. /* Copyright 2020 Qiang Yu <yuq825@gmail.com> */
  3. #if !defined(_LIMA_TRACE_H) || defined(TRACE_HEADER_MULTI_READ)
  4. #define _LIMA_TRACE_H_
  5. #include <linux/tracepoint.h>
  6. #undef TRACE_SYSTEM
  7. #define TRACE_SYSTEM lima
  8. #define TRACE_INCLUDE_FILE lima_trace
  9. DECLARE_EVENT_CLASS(lima_task,
  10. TP_PROTO(struct lima_sched_task *task),
  11. TP_ARGS(task),
  12. TP_STRUCT__entry(
  13. __field(uint64_t, task_id)
  14. __field(unsigned int, context)
  15. __field(unsigned int, seqno)
  16. __string(pipe, task->base.sched->name)
  17. ),
  18. TP_fast_assign(
  19. __entry->task_id = task->base.id;
  20. __entry->context = task->base.s_fence->finished.context;
  21. __entry->seqno = task->base.s_fence->finished.seqno;
  22. __assign_str(pipe, task->base.sched->name)
  23. ),
  24. TP_printk("task=%llu, context=%u seqno=%u pipe=%s",
  25. __entry->task_id, __entry->context, __entry->seqno,
  26. __get_str(pipe))
  27. );
  28. DEFINE_EVENT(lima_task, lima_task_submit,
  29. TP_PROTO(struct lima_sched_task *task),
  30. TP_ARGS(task)
  31. );
  32. DEFINE_EVENT(lima_task, lima_task_run,
  33. TP_PROTO(struct lima_sched_task *task),
  34. TP_ARGS(task)
  35. );
  36. #endif
  37. /* This part must be outside protection */
  38. #undef TRACE_INCLUDE_PATH
  39. #define TRACE_INCLUDE_PATH ../../drivers/gpu/drm/lima
  40. #include <trace/define_trace.h>