trace-qcom-lpm.h 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * Copyright (c) 2021, The Linux Foundation. All rights reserved.
  4. */
  5. #if !defined(_TRACE_QCOM_LPM_H) || defined(TRACE_HEADER_MULTI_READ)
  6. #define _TRACE_QCOM_LPM_H
  7. #undef TRACE_SYSTEM
  8. #define TRACE_SYSTEM qcom_lpm
  9. #include <linux/tracepoint.h>
  10. TRACE_EVENT(lpm_gov_select,
  11. TP_PROTO(int idx, s64 qos, u64 sleep, u64 reason),
  12. TP_ARGS(idx, qos, sleep, reason),
  13. TP_STRUCT__entry(
  14. __field(int, idx)
  15. __field(s64, qos)
  16. __field(u64, sleep)
  17. __field(u64, reason)
  18. ),
  19. TP_fast_assign(
  20. __entry->idx = idx;
  21. __entry->qos = qos;
  22. __entry->sleep = sleep;
  23. __entry->reason = reason;
  24. ),
  25. TP_printk("state:%d qos-us:%lld sleep-us:%llu reason:%#x",
  26. __entry->idx, __entry->qos, __entry->sleep, __entry->reason)
  27. );
  28. TRACE_EVENT(gov_pred_select,
  29. TP_PROTO(u32 predtype, u64 predicted, u32 tmr_time),
  30. TP_ARGS(predtype, predicted, tmr_time),
  31. TP_STRUCT__entry(
  32. __field(u32, predtype)
  33. __field(u64, predicted)
  34. __field(u32, tmr_time)
  35. ),
  36. TP_fast_assign(
  37. __entry->predtype = predtype;
  38. __entry->predicted = predicted;
  39. __entry->tmr_time = tmr_time;
  40. ),
  41. TP_printk("pred:%u time:%lu tmr_time:%u",
  42. __entry->predtype, __entry->predicted, __entry->tmr_time)
  43. );
  44. TRACE_EVENT(gov_pred_hist,
  45. TP_PROTO(int idx, int residency, int tmr),
  46. TP_ARGS(idx, tmr, residency),
  47. TP_STRUCT__entry(
  48. __field(int, idx)
  49. __field(int, residency)
  50. __field(int, tmr)
  51. ),
  52. TP_fast_assign(
  53. __entry->idx = idx;
  54. __entry->residency = residency;
  55. __entry->tmr = tmr;
  56. ),
  57. TP_printk("idx:%d residency=%d, tmr=%d", __entry->idx, __entry->residency, __entry->tmr)
  58. );
  59. #endif /* _TRACE_QCOM_LPM_H */
  60. #undef TRACE_INCLUDE_PATH
  61. #define TRACE_INCLUDE_PATH .
  62. #undef TRACE_INCLUDE_FILE
  63. #define TRACE_INCLUDE_FILE trace-qcom-lpm
  64. #include <trace/define_trace.h>