mpm.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * Copyright (c) 2018-2020, The Linux Foundation. All rights reserved.
  4. * Copyright (c) 2022-2023, Qualcomm Innovation Center, Inc. All rights reserved.
  5. */
  6. #undef TRACE_SYSTEM
  7. #define TRACE_SYSTEM mpm
  8. #if !defined(_TRACE_MPM_) || defined(TRACE_HEADER_MULTI_READ)
  9. #define _TRACE_MPM_H_
  10. #include <linux/tracepoint.h>
  11. TRACE_EVENT(mpm_wakeup_enable_irqs,
  12. TP_PROTO(uint32_t index, uint32_t irqs),
  13. TP_ARGS(index, irqs),
  14. TP_STRUCT__entry(
  15. __field(uint32_t, index)
  16. __field(uint32_t, irqs)
  17. ),
  18. TP_fast_assign(
  19. __entry->index = index;
  20. __entry->irqs = irqs;
  21. ),
  22. TP_printk("index:%u wakeup_capable_irqs:0x%x",
  23. __entry->index, __entry->irqs)
  24. );
  25. TRACE_EVENT(mpm_wakeup_pending_irqs,
  26. TP_PROTO(uint32_t index, uint32_t irqs),
  27. TP_ARGS(index, irqs),
  28. TP_STRUCT__entry(
  29. __field(uint32_t, index)
  30. __field(uint32_t, irqs)
  31. ),
  32. TP_fast_assign(
  33. __entry->index = index;
  34. __entry->irqs = irqs;
  35. ),
  36. TP_printk("index:%u wakeup_irqs:0x%x", __entry->index, __entry->irqs)
  37. );
  38. TRACE_EVENT(mpm_wakeup_time,
  39. TP_PROTO(bool from_idle, u64 wakeup, u64 current_ticks),
  40. TP_ARGS(from_idle, wakeup, current_ticks),
  41. TP_STRUCT__entry(
  42. __field(bool, from_idle)
  43. __field(u64, wakeup)
  44. __field(u64, current_ticks)
  45. ),
  46. TP_fast_assign(
  47. __entry->from_idle = from_idle;
  48. __entry->wakeup = wakeup;
  49. __entry->current_ticks = current_ticks;
  50. ),
  51. TP_printk("idle:%d wakeup:0x%llx current:0x%llx", __entry->from_idle,
  52. __entry->wakeup, __entry->current_ticks)
  53. );
  54. #endif
  55. #define TRACE_INCLUDE_FILE mpm
  56. #include <trace/define_trace.h>