root/include/trace/events/clk.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0-only */
   2 /*
   3  * Copyright (c) 2014-2015, The Linux Foundation. All rights reserved.
   4  */
   5 #undef TRACE_SYSTEM
   6 #define TRACE_SYSTEM clk
   7 
   8 #if !defined(_TRACE_CLK_H) || defined(TRACE_HEADER_MULTI_READ)
   9 #define _TRACE_CLK_H
  10 
  11 #include <linux/tracepoint.h>
  12 
  13 struct clk_core;
  14 
  15 DECLARE_EVENT_CLASS(clk,
  16 
  17         TP_PROTO(struct clk_core *core),
  18 
  19         TP_ARGS(core),
  20 
  21         TP_STRUCT__entry(
  22                 __string(        name,           core->name       )
  23         ),
  24 
  25         TP_fast_assign(
  26                 __assign_str(name, core->name);
  27         ),
  28 
  29         TP_printk("%s", __get_str(name))
  30 );
  31 
  32 DEFINE_EVENT(clk, clk_enable,
  33 
  34         TP_PROTO(struct clk_core *core),
  35 
  36         TP_ARGS(core)
  37 );
  38 
  39 DEFINE_EVENT(clk, clk_enable_complete,
  40 
  41         TP_PROTO(struct clk_core *core),
  42 
  43         TP_ARGS(core)
  44 );
  45 
  46 DEFINE_EVENT(clk, clk_disable,
  47 
  48         TP_PROTO(struct clk_core *core),
  49 
  50         TP_ARGS(core)
  51 );
  52 
  53 DEFINE_EVENT(clk, clk_disable_complete,
  54 
  55         TP_PROTO(struct clk_core *core),
  56 
  57         TP_ARGS(core)
  58 );
  59 
  60 DEFINE_EVENT(clk, clk_prepare,
  61 
  62         TP_PROTO(struct clk_core *core),
  63 
  64         TP_ARGS(core)
  65 );
  66 
  67 DEFINE_EVENT(clk, clk_prepare_complete,
  68 
  69         TP_PROTO(struct clk_core *core),
  70 
  71         TP_ARGS(core)
  72 );
  73 
  74 DEFINE_EVENT(clk, clk_unprepare,
  75 
  76         TP_PROTO(struct clk_core *core),
  77 
  78         TP_ARGS(core)
  79 );
  80 
  81 DEFINE_EVENT(clk, clk_unprepare_complete,
  82 
  83         TP_PROTO(struct clk_core *core),
  84 
  85         TP_ARGS(core)
  86 );
  87 
  88 DECLARE_EVENT_CLASS(clk_rate,
  89 
  90         TP_PROTO(struct clk_core *core, unsigned long rate),
  91 
  92         TP_ARGS(core, rate),
  93 
  94         TP_STRUCT__entry(
  95                 __string(        name,           core->name                )
  96                 __field(unsigned long,           rate                      )
  97         ),
  98 
  99         TP_fast_assign(
 100                 __assign_str(name, core->name);
 101                 __entry->rate = rate;
 102         ),
 103 
 104         TP_printk("%s %lu", __get_str(name), (unsigned long)__entry->rate)
 105 );
 106 
 107 DEFINE_EVENT(clk_rate, clk_set_rate,
 108 
 109         TP_PROTO(struct clk_core *core, unsigned long rate),
 110 
 111         TP_ARGS(core, rate)
 112 );
 113 
 114 DEFINE_EVENT(clk_rate, clk_set_rate_complete,
 115 
 116         TP_PROTO(struct clk_core *core, unsigned long rate),
 117 
 118         TP_ARGS(core, rate)
 119 );
 120 
 121 DECLARE_EVENT_CLASS(clk_parent,
 122 
 123         TP_PROTO(struct clk_core *core, struct clk_core *parent),
 124 
 125         TP_ARGS(core, parent),
 126 
 127         TP_STRUCT__entry(
 128                 __string(        name,           core->name                )
 129                 __string(        pname, parent ? parent->name : "none"     )
 130         ),
 131 
 132         TP_fast_assign(
 133                 __assign_str(name, core->name);
 134                 __assign_str(pname, parent ? parent->name : "none");
 135         ),
 136 
 137         TP_printk("%s %s", __get_str(name), __get_str(pname))
 138 );
 139 
 140 DEFINE_EVENT(clk_parent, clk_set_parent,
 141 
 142         TP_PROTO(struct clk_core *core, struct clk_core *parent),
 143 
 144         TP_ARGS(core, parent)
 145 );
 146 
 147 DEFINE_EVENT(clk_parent, clk_set_parent_complete,
 148 
 149         TP_PROTO(struct clk_core *core, struct clk_core *parent),
 150 
 151         TP_ARGS(core, parent)
 152 );
 153 
 154 DECLARE_EVENT_CLASS(clk_phase,
 155 
 156         TP_PROTO(struct clk_core *core, int phase),
 157 
 158         TP_ARGS(core, phase),
 159 
 160         TP_STRUCT__entry(
 161                 __string(        name,           core->name                )
 162                 __field(          int,           phase                     )
 163         ),
 164 
 165         TP_fast_assign(
 166                 __assign_str(name, core->name);
 167                 __entry->phase = phase;
 168         ),
 169 
 170         TP_printk("%s %d", __get_str(name), (int)__entry->phase)
 171 );
 172 
 173 DEFINE_EVENT(clk_phase, clk_set_phase,
 174 
 175         TP_PROTO(struct clk_core *core, int phase),
 176 
 177         TP_ARGS(core, phase)
 178 );
 179 
 180 DEFINE_EVENT(clk_phase, clk_set_phase_complete,
 181 
 182         TP_PROTO(struct clk_core *core, int phase),
 183 
 184         TP_ARGS(core, phase)
 185 );
 186 
 187 DECLARE_EVENT_CLASS(clk_duty_cycle,
 188 
 189         TP_PROTO(struct clk_core *core, struct clk_duty *duty),
 190 
 191         TP_ARGS(core, duty),
 192 
 193         TP_STRUCT__entry(
 194                 __string(        name,           core->name              )
 195                 __field( unsigned int,           num                     )
 196                 __field( unsigned int,           den                     )
 197         ),
 198 
 199         TP_fast_assign(
 200                 __assign_str(name, core->name);
 201                 __entry->num = duty->num;
 202                 __entry->den = duty->den;
 203         ),
 204 
 205         TP_printk("%s %u/%u", __get_str(name), (unsigned int)__entry->num,
 206                   (unsigned int)__entry->den)
 207 );
 208 
 209 DEFINE_EVENT(clk_duty_cycle, clk_set_duty_cycle,
 210 
 211         TP_PROTO(struct clk_core *core, struct clk_duty *duty),
 212 
 213         TP_ARGS(core, duty)
 214 );
 215 
 216 DEFINE_EVENT(clk_duty_cycle, clk_set_duty_cycle_complete,
 217 
 218         TP_PROTO(struct clk_core *core, struct clk_duty *duty),
 219 
 220         TP_ARGS(core, duty)
 221 );
 222 
 223 #endif /* _TRACE_CLK_H */
 224 
 225 /* This part must be outside protection */
 226 #include <trace/define_trace.h>

/* [<][>][^][v][top][bottom][index][help] */