linux/include/trace/events/regulator.h
<<
>>
Prefs
   1#undef TRACE_SYSTEM
   2#define TRACE_SYSTEM regulator
   3
   4#if !defined(_TRACE_REGULATOR_H) || defined(TRACE_HEADER_MULTI_READ)
   5#define _TRACE_REGULATOR_H
   6
   7#include <linux/ktime.h>
   8#include <linux/tracepoint.h>
   9
  10/*
  11 * Events which just log themselves and the regulator name for enable/disable
  12 * type tracking.
  13 */
  14DECLARE_EVENT_CLASS(regulator_basic,
  15
  16        TP_PROTO(const char *name),
  17
  18        TP_ARGS(name),
  19
  20        TP_STRUCT__entry(
  21                __string(       name,   name    )
  22        ),
  23
  24        TP_fast_assign(
  25                __assign_str(name, name);
  26        ),
  27
  28        TP_printk("name=%s", __get_str(name))
  29
  30);
  31
  32DEFINE_EVENT(regulator_basic, regulator_enable,
  33
  34        TP_PROTO(const char *name),
  35
  36        TP_ARGS(name)
  37
  38);
  39
  40DEFINE_EVENT(regulator_basic, regulator_enable_delay,
  41
  42        TP_PROTO(const char *name),
  43
  44        TP_ARGS(name)
  45
  46);
  47
  48DEFINE_EVENT(regulator_basic, regulator_enable_complete,
  49
  50        TP_PROTO(const char *name),
  51
  52        TP_ARGS(name)
  53
  54);
  55
  56DEFINE_EVENT(regulator_basic, regulator_disable,
  57
  58        TP_PROTO(const char *name),
  59
  60        TP_ARGS(name)
  61
  62);
  63
  64DEFINE_EVENT(regulator_basic, regulator_disable_complete,
  65
  66        TP_PROTO(const char *name),
  67
  68        TP_ARGS(name)
  69
  70);
  71
  72/*
  73 * Events that take a range of numerical values, mostly for voltages
  74 * and so on.
  75 */
  76DECLARE_EVENT_CLASS(regulator_range,
  77
  78        TP_PROTO(const char *name, int min, int max),
  79
  80        TP_ARGS(name, min, max),
  81
  82        TP_STRUCT__entry(
  83                __string(       name,           name            )
  84                __field(        int,            min             )
  85                __field(        int,            max             )
  86        ),
  87
  88        TP_fast_assign(
  89                __assign_str(name, name);
  90                __entry->min  = min;
  91                __entry->max  = max;
  92        ),
  93
  94        TP_printk("name=%s (%d-%d)", __get_str(name),
  95                  (int)__entry->min, (int)__entry->max)
  96);
  97
  98DEFINE_EVENT(regulator_range, regulator_set_voltage,
  99
 100        TP_PROTO(const char *name, int min, int max),
 101
 102        TP_ARGS(name, min, max)
 103
 104);
 105
 106
 107/*
 108 * Events that take a single value, mostly for readback and refcounts.
 109 */
 110DECLARE_EVENT_CLASS(regulator_value,
 111
 112        TP_PROTO(const char *name, unsigned int val),
 113
 114        TP_ARGS(name, val),
 115
 116        TP_STRUCT__entry(
 117                __string(       name,           name            )
 118                __field(        unsigned int,   val             )
 119        ),
 120
 121        TP_fast_assign(
 122                __assign_str(name, name);
 123                __entry->val  = val;
 124        ),
 125
 126        TP_printk("name=%s, val=%u", __get_str(name),
 127                  (int)__entry->val)
 128);
 129
 130DEFINE_EVENT(regulator_value, regulator_set_voltage_complete,
 131
 132        TP_PROTO(const char *name, unsigned int value),
 133
 134        TP_ARGS(name, value)
 135
 136);
 137
 138#endif /* _TRACE_POWER_H */
 139
 140/* This part must be outside protection */
 141#include <trace/define_trace.h>
 142