cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

v3d_trace.h (6109B)


      1// SPDX-License-Identifier: GPL-2.0+
      2/* Copyright (C) 2015-2018 Broadcom */
      3
      4#if !defined(_V3D_TRACE_H_) || defined(TRACE_HEADER_MULTI_READ)
      5#define _V3D_TRACE_H_
      6
      7#include <linux/stringify.h>
      8#include <linux/types.h>
      9#include <linux/tracepoint.h>
     10
     11#undef TRACE_SYSTEM
     12#define TRACE_SYSTEM v3d
     13#define TRACE_INCLUDE_FILE v3d_trace
     14
     15TRACE_EVENT(v3d_submit_cl_ioctl,
     16	    TP_PROTO(struct drm_device *dev, u32 ct1qba, u32 ct1qea),
     17	    TP_ARGS(dev, ct1qba, ct1qea),
     18
     19	    TP_STRUCT__entry(
     20			     __field(u32, dev)
     21			     __field(u32, ct1qba)
     22			     __field(u32, ct1qea)
     23			     ),
     24
     25	    TP_fast_assign(
     26			   __entry->dev = dev->primary->index;
     27			   __entry->ct1qba = ct1qba;
     28			   __entry->ct1qea = ct1qea;
     29			   ),
     30
     31	    TP_printk("dev=%u, RCL 0x%08x..0x%08x",
     32		      __entry->dev,
     33		      __entry->ct1qba,
     34		      __entry->ct1qea)
     35);
     36
     37TRACE_EVENT(v3d_submit_cl,
     38	    TP_PROTO(struct drm_device *dev, bool is_render,
     39		     uint64_t seqno,
     40		     u32 ctnqba, u32 ctnqea),
     41	    TP_ARGS(dev, is_render, seqno, ctnqba, ctnqea),
     42
     43	    TP_STRUCT__entry(
     44			     __field(u32, dev)
     45			     __field(bool, is_render)
     46			     __field(u64, seqno)
     47			     __field(u32, ctnqba)
     48			     __field(u32, ctnqea)
     49			     ),
     50
     51	    TP_fast_assign(
     52			   __entry->dev = dev->primary->index;
     53			   __entry->is_render = is_render;
     54			   __entry->seqno = seqno;
     55			   __entry->ctnqba = ctnqba;
     56			   __entry->ctnqea = ctnqea;
     57			   ),
     58
     59	    TP_printk("dev=%u, %s, seqno=%llu, 0x%08x..0x%08x",
     60		      __entry->dev,
     61		      __entry->is_render ? "RCL" : "BCL",
     62		      __entry->seqno,
     63		      __entry->ctnqba,
     64		      __entry->ctnqea)
     65);
     66
     67TRACE_EVENT(v3d_bcl_irq,
     68	    TP_PROTO(struct drm_device *dev,
     69		     uint64_t seqno),
     70	    TP_ARGS(dev, seqno),
     71
     72	    TP_STRUCT__entry(
     73			     __field(u32, dev)
     74			     __field(u64, seqno)
     75			     ),
     76
     77	    TP_fast_assign(
     78			   __entry->dev = dev->primary->index;
     79			   __entry->seqno = seqno;
     80			   ),
     81
     82	    TP_printk("dev=%u, seqno=%llu",
     83		      __entry->dev,
     84		      __entry->seqno)
     85);
     86
     87TRACE_EVENT(v3d_rcl_irq,
     88	    TP_PROTO(struct drm_device *dev,
     89		     uint64_t seqno),
     90	    TP_ARGS(dev, seqno),
     91
     92	    TP_STRUCT__entry(
     93			     __field(u32, dev)
     94			     __field(u64, seqno)
     95			     ),
     96
     97	    TP_fast_assign(
     98			   __entry->dev = dev->primary->index;
     99			   __entry->seqno = seqno;
    100			   ),
    101
    102	    TP_printk("dev=%u, seqno=%llu",
    103		      __entry->dev,
    104		      __entry->seqno)
    105);
    106
    107TRACE_EVENT(v3d_tfu_irq,
    108	    TP_PROTO(struct drm_device *dev,
    109		     uint64_t seqno),
    110	    TP_ARGS(dev, seqno),
    111
    112	    TP_STRUCT__entry(
    113			     __field(u32, dev)
    114			     __field(u64, seqno)
    115			     ),
    116
    117	    TP_fast_assign(
    118			   __entry->dev = dev->primary->index;
    119			   __entry->seqno = seqno;
    120			   ),
    121
    122	    TP_printk("dev=%u, seqno=%llu",
    123		      __entry->dev,
    124		      __entry->seqno)
    125);
    126
    127TRACE_EVENT(v3d_csd_irq,
    128	    TP_PROTO(struct drm_device *dev,
    129		     uint64_t seqno),
    130	    TP_ARGS(dev, seqno),
    131
    132	    TP_STRUCT__entry(
    133			     __field(u32, dev)
    134			     __field(u64, seqno)
    135			     ),
    136
    137	    TP_fast_assign(
    138			   __entry->dev = dev->primary->index;
    139			   __entry->seqno = seqno;
    140			   ),
    141
    142	    TP_printk("dev=%u, seqno=%llu",
    143		      __entry->dev,
    144		      __entry->seqno)
    145);
    146
    147TRACE_EVENT(v3d_submit_tfu_ioctl,
    148	    TP_PROTO(struct drm_device *dev, u32 iia),
    149	    TP_ARGS(dev, iia),
    150
    151	    TP_STRUCT__entry(
    152			     __field(u32, dev)
    153			     __field(u32, iia)
    154			     ),
    155
    156	    TP_fast_assign(
    157			   __entry->dev = dev->primary->index;
    158			   __entry->iia = iia;
    159			   ),
    160
    161	    TP_printk("dev=%u, IIA 0x%08x",
    162		      __entry->dev,
    163		      __entry->iia)
    164);
    165
    166TRACE_EVENT(v3d_submit_tfu,
    167	    TP_PROTO(struct drm_device *dev,
    168		     uint64_t seqno),
    169	    TP_ARGS(dev, seqno),
    170
    171	    TP_STRUCT__entry(
    172			     __field(u32, dev)
    173			     __field(u64, seqno)
    174			     ),
    175
    176	    TP_fast_assign(
    177			   __entry->dev = dev->primary->index;
    178			   __entry->seqno = seqno;
    179			   ),
    180
    181	    TP_printk("dev=%u, seqno=%llu",
    182		      __entry->dev,
    183		      __entry->seqno)
    184);
    185
    186TRACE_EVENT(v3d_submit_csd_ioctl,
    187	    TP_PROTO(struct drm_device *dev, u32 cfg5, u32 cfg6),
    188	    TP_ARGS(dev, cfg5, cfg6),
    189
    190	    TP_STRUCT__entry(
    191			     __field(u32, dev)
    192			     __field(u32, cfg5)
    193			     __field(u32, cfg6)
    194			     ),
    195
    196	    TP_fast_assign(
    197			   __entry->dev = dev->primary->index;
    198			   __entry->cfg5 = cfg5;
    199			   __entry->cfg6 = cfg6;
    200			   ),
    201
    202	    TP_printk("dev=%u, CFG5 0x%08x, CFG6 0x%08x",
    203		      __entry->dev,
    204		      __entry->cfg5,
    205		      __entry->cfg6)
    206);
    207
    208TRACE_EVENT(v3d_submit_csd,
    209	    TP_PROTO(struct drm_device *dev,
    210		     uint64_t seqno),
    211	    TP_ARGS(dev, seqno),
    212
    213	    TP_STRUCT__entry(
    214			     __field(u32, dev)
    215			     __field(u64, seqno)
    216			     ),
    217
    218	    TP_fast_assign(
    219			   __entry->dev = dev->primary->index;
    220			   __entry->seqno = seqno;
    221			   ),
    222
    223	    TP_printk("dev=%u, seqno=%llu",
    224		      __entry->dev,
    225		      __entry->seqno)
    226);
    227
    228TRACE_EVENT(v3d_cache_clean_begin,
    229	    TP_PROTO(struct drm_device *dev),
    230	    TP_ARGS(dev),
    231
    232	    TP_STRUCT__entry(
    233			     __field(u32, dev)
    234			     ),
    235
    236	    TP_fast_assign(
    237			   __entry->dev = dev->primary->index;
    238			   ),
    239
    240	    TP_printk("dev=%u",
    241		      __entry->dev)
    242);
    243
    244TRACE_EVENT(v3d_cache_clean_end,
    245	    TP_PROTO(struct drm_device *dev),
    246	    TP_ARGS(dev),
    247
    248	    TP_STRUCT__entry(
    249			     __field(u32, dev)
    250			     ),
    251
    252	    TP_fast_assign(
    253			   __entry->dev = dev->primary->index;
    254			   ),
    255
    256	    TP_printk("dev=%u",
    257		      __entry->dev)
    258);
    259
    260TRACE_EVENT(v3d_reset_begin,
    261	    TP_PROTO(struct drm_device *dev),
    262	    TP_ARGS(dev),
    263
    264	    TP_STRUCT__entry(
    265			     __field(u32, dev)
    266			     ),
    267
    268	    TP_fast_assign(
    269			   __entry->dev = dev->primary->index;
    270			   ),
    271
    272	    TP_printk("dev=%u",
    273		      __entry->dev)
    274);
    275
    276TRACE_EVENT(v3d_reset_end,
    277	    TP_PROTO(struct drm_device *dev),
    278	    TP_ARGS(dev),
    279
    280	    TP_STRUCT__entry(
    281			     __field(u32, dev)
    282			     ),
    283
    284	    TP_fast_assign(
    285			   __entry->dev = dev->primary->index;
    286			   ),
    287
    288	    TP_printk("dev=%u",
    289		      __entry->dev)
    290);
    291
    292#endif /* _V3D_TRACE_H_ */
    293
    294/* This part must be outside protection */
    295#undef TRACE_INCLUDE_PATH
    296#define TRACE_INCLUDE_PATH .
    297#include <trace/define_trace.h>