trace_rpm_smd.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * Copyright (c) 2016-2021, The Linux Foundation. All rights reserved.
  4. * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
  5. */
  6. #undef TRACE_SYSTEM
  7. #define TRACE_SYSTEM rpm_smd
  8. #if !defined(_TRACE_RPM_SMD_H) || defined(TRACE_HEADER_MULTI_READ)
  9. #define _TRACE_RPM_SMD_H
  10. #include <linux/tracepoint.h>
  11. TRACE_EVENT(rpm_smd_ack_recvd,
  12. TP_PROTO(unsigned int irq, unsigned int msg_id, int errno),
  13. TP_ARGS(irq, msg_id, errno),
  14. TP_STRUCT__entry(
  15. __field(int, irq)
  16. __field(int, msg_id)
  17. __field(int, errno)
  18. ),
  19. TP_fast_assign(
  20. __entry->irq = irq;
  21. __entry->msg_id = msg_id;
  22. __entry->errno = errno;
  23. ),
  24. TP_printk("ctx:%s msg_id:%d errno:%08x",
  25. __entry->irq ? "noslp" : "sleep",
  26. __entry->msg_id,
  27. __entry->errno)
  28. );
  29. TRACE_EVENT(rpm_smd_interrupt_notify,
  30. TP_PROTO(char *dummy),
  31. TP_ARGS(dummy),
  32. TP_STRUCT__entry(
  33. __field(char *, dummy)
  34. ),
  35. TP_fast_assign(
  36. __entry->dummy = dummy;
  37. ),
  38. TP_printk("%s", __entry->dummy)
  39. );
  40. DECLARE_EVENT_CLASS(rpm_send_msg,
  41. TP_PROTO(unsigned int msg_id, unsigned int rsc_type,
  42. unsigned int rsc_id),
  43. TP_ARGS(msg_id, rsc_type, rsc_id),
  44. TP_STRUCT__entry(
  45. __field(u32, msg_id)
  46. __field(u32, rsc_type)
  47. __field(u32, rsc_id)
  48. __array(char, name, 5)
  49. ),
  50. TP_fast_assign(
  51. __entry->msg_id = msg_id;
  52. __entry->name[4] = 0;
  53. __entry->rsc_type = rsc_type;
  54. __entry->rsc_id = rsc_id;
  55. memcpy(__entry->name, &rsc_type, sizeof(uint32_t));
  56. ),
  57. TP_printk("msg_id:%d, rsc_type:0x%08x(%s), rsc_id:0x%08x",
  58. __entry->msg_id,
  59. __entry->rsc_type, __entry->name,
  60. __entry->rsc_id)
  61. );
  62. DEFINE_EVENT(rpm_send_msg, rpm_smd_sleep_set,
  63. TP_PROTO(unsigned int msg_id, unsigned int rsc_type,
  64. unsigned int rsc_id),
  65. TP_ARGS(msg_id, rsc_type, rsc_id)
  66. );
  67. DEFINE_EVENT(rpm_send_msg, rpm_smd_send_sleep_set,
  68. TP_PROTO(unsigned int msg_id, unsigned int rsc_type,
  69. unsigned int rsc_id),
  70. TP_ARGS(msg_id, rsc_type, rsc_id)
  71. );
  72. DEFINE_EVENT(rpm_send_msg, rpm_smd_send_active_set,
  73. TP_PROTO(unsigned int msg_id, unsigned int rsc_type,
  74. unsigned int rsc_id),
  75. TP_ARGS(msg_id, rsc_type, rsc_id)
  76. );
  77. #endif
  78. #define TRACE_INCLUDE_FILE trace_rpm_smd
  79. #include <trace/define_trace.h>