v3d_trace.h 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283
  1. // SPDX-License-Identifier: GPL-2.0+
  2. /* Copyright (C) 2015-2018 Broadcom */
  3. #if !defined(_V3D_TRACE_H_) || defined(TRACE_HEADER_MULTI_READ)
  4. #define _V3D_TRACE_H_
  5. #include <linux/stringify.h>
  6. #include <linux/types.h>
  7. #include <linux/tracepoint.h>
  8. #undef TRACE_SYSTEM
  9. #define TRACE_SYSTEM v3d
  10. #define TRACE_INCLUDE_FILE v3d_trace
  11. TRACE_EVENT(v3d_submit_cl,
  12. TP_PROTO(struct drm_device *dev, bool is_render,
  13. uint64_t seqno,
  14. u32 ctnqba, u32 ctnqea),
  15. TP_ARGS(dev, is_render, seqno, ctnqba, ctnqea),
  16. TP_STRUCT__entry(
  17. __field(u32, dev)
  18. __field(bool, is_render)
  19. __field(u64, seqno)
  20. __field(u32, ctnqba)
  21. __field(u32, ctnqea)
  22. ),
  23. TP_fast_assign(
  24. __entry->dev = dev->primary->index;
  25. __entry->is_render = is_render;
  26. __entry->seqno = seqno;
  27. __entry->ctnqba = ctnqba;
  28. __entry->ctnqea = ctnqea;
  29. ),
  30. TP_printk("dev=%u, %s, seqno=%llu, 0x%08x..0x%08x",
  31. __entry->dev,
  32. __entry->is_render ? "RCL" : "BCL",
  33. __entry->seqno,
  34. __entry->ctnqba,
  35. __entry->ctnqea)
  36. );
  37. TRACE_EVENT(v3d_reset_begin,
  38. TP_PROTO(struct drm_device *dev),
  39. TP_ARGS(dev),
  40. TP_STRUCT__entry(
  41. __field(u32, dev)
  42. ),
  43. TP_fast_assign(
  44. __entry->dev = dev->primary->index;
  45. ),
  46. TP_printk("dev=%u",
  47. __entry->dev)
  48. );
  49. TRACE_EVENT(v3d_reset_end,
  50. TP_PROTO(struct drm_device *dev),
  51. TP_ARGS(dev),
  52. TP_STRUCT__entry(
  53. __field(u32, dev)
  54. ),
  55. TP_fast_assign(
  56. __entry->dev = dev->primary->index;
  57. ),
  58. TP_printk("dev=%u",
  59. __entry->dev)
  60. );
  61. #endif /* _V3D_TRACE_H_ */
  62. /* This part must be outside protection */
  63. #undef TRACE_INCLUDE_PATH
  64. #define TRACE_INCLUDE_PATH .
  65. #include <trace/define_trace.h>