arm64: dts: qcom: sm8550: add TRNG node
[linux-modified.git] / events / kyber.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #undef TRACE_SYSTEM
3 #define TRACE_SYSTEM kyber
4
5 #if !defined(_TRACE_KYBER_H) || defined(TRACE_HEADER_MULTI_READ)
6 #define _TRACE_KYBER_H
7
8 #include <linux/blkdev.h>
9 #include <linux/tracepoint.h>
10
11 #define DOMAIN_LEN              16
12 #define LATENCY_TYPE_LEN        8
13
14 TRACE_EVENT(kyber_latency,
15
16         TP_PROTO(dev_t dev, const char *domain, const char *type,
17                  unsigned int percentile, unsigned int numerator,
18                  unsigned int denominator, unsigned int samples),
19
20         TP_ARGS(dev, domain, type, percentile, numerator, denominator, samples),
21
22         TP_STRUCT__entry(
23                 __field(        dev_t,  dev                             )
24                 __array(        char,   domain, DOMAIN_LEN              )
25                 __array(        char,   type,   LATENCY_TYPE_LEN        )
26                 __field(        u8,     percentile                      )
27                 __field(        u8,     numerator                       )
28                 __field(        u8,     denominator                     )
29                 __field(        unsigned int,   samples                 )
30         ),
31
32         TP_fast_assign(
33                 __entry->dev            = dev;
34                 strscpy(__entry->domain, domain, sizeof(__entry->domain));
35                 strscpy(__entry->type, type, sizeof(__entry->type));
36                 __entry->percentile     = percentile;
37                 __entry->numerator      = numerator;
38                 __entry->denominator    = denominator;
39                 __entry->samples        = samples;
40         ),
41
42         TP_printk("%d,%d %s %s p%u %u/%u samples=%u",
43                   MAJOR(__entry->dev), MINOR(__entry->dev), __entry->domain,
44                   __entry->type, __entry->percentile, __entry->numerator,
45                   __entry->denominator, __entry->samples)
46 );
47
48 TRACE_EVENT(kyber_adjust,
49
50         TP_PROTO(dev_t dev, const char *domain, unsigned int depth),
51
52         TP_ARGS(dev, domain, depth),
53
54         TP_STRUCT__entry(
55                 __field(        dev_t,  dev                     )
56                 __array(        char,   domain, DOMAIN_LEN      )
57                 __field(        unsigned int,   depth           )
58         ),
59
60         TP_fast_assign(
61                 __entry->dev            = dev;
62                 strscpy(__entry->domain, domain, sizeof(__entry->domain));
63                 __entry->depth          = depth;
64         ),
65
66         TP_printk("%d,%d %s %u",
67                   MAJOR(__entry->dev), MINOR(__entry->dev), __entry->domain,
68                   __entry->depth)
69 );
70
71 TRACE_EVENT(kyber_throttled,
72
73         TP_PROTO(dev_t dev, const char *domain),
74
75         TP_ARGS(dev, domain),
76
77         TP_STRUCT__entry(
78                 __field(        dev_t,  dev                     )
79                 __array(        char,   domain, DOMAIN_LEN      )
80         ),
81
82         TP_fast_assign(
83                 __entry->dev            = dev;
84                 strscpy(__entry->domain, domain, sizeof(__entry->domain));
85         ),
86
87         TP_printk("%d,%d %s", MAJOR(__entry->dev), MINOR(__entry->dev),
88                   __entry->domain)
89 );
90
91 #define _TRACE_KYBER_H
92 #endif /* _TRACE_KYBER_H */
93
94 /* This part must be outside protection */
95 #include <trace/define_trace.h>