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

iwl-devtrace-io.h (4535B)


      1/* SPDX-License-Identifier: GPL-2.0-only */
      2/******************************************************************************
      3 *
      4 * Copyright(c) 2009 - 2014 Intel Corporation. All rights reserved.
      5 * Copyright(c) 2016-2017 Intel Deutschland GmbH
      6 *****************************************************************************/
      7
      8#if !defined(__IWLWIFI_DEVICE_TRACE_IO) || defined(TRACE_HEADER_MULTI_READ)
      9#define __IWLWIFI_DEVICE_TRACE_IO
     10
     11#include <linux/tracepoint.h>
     12#include <linux/pci.h>
     13
     14#undef TRACE_SYSTEM
     15#define TRACE_SYSTEM iwlwifi_io
     16
     17TRACE_EVENT(iwlwifi_dev_ioread32,
     18	TP_PROTO(const struct device *dev, u32 offs, u32 val),
     19	TP_ARGS(dev, offs, val),
     20	TP_STRUCT__entry(
     21		DEV_ENTRY
     22		__field(u32, offs)
     23		__field(u32, val)
     24	),
     25	TP_fast_assign(
     26		DEV_ASSIGN;
     27		__entry->offs = offs;
     28		__entry->val = val;
     29	),
     30	TP_printk("[%s] read io[%#x] = %#x",
     31		  __get_str(dev), __entry->offs, __entry->val)
     32);
     33
     34TRACE_EVENT(iwlwifi_dev_iowrite8,
     35	TP_PROTO(const struct device *dev, u32 offs, u8 val),
     36	TP_ARGS(dev, offs, val),
     37	TP_STRUCT__entry(
     38		DEV_ENTRY
     39		__field(u32, offs)
     40		__field(u8, val)
     41	),
     42	TP_fast_assign(
     43		DEV_ASSIGN;
     44		__entry->offs = offs;
     45		__entry->val = val;
     46	),
     47	TP_printk("[%s] write io[%#x] = %#x)",
     48		  __get_str(dev), __entry->offs, __entry->val)
     49);
     50
     51TRACE_EVENT(iwlwifi_dev_iowrite32,
     52	TP_PROTO(const struct device *dev, u32 offs, u32 val),
     53	TP_ARGS(dev, offs, val),
     54	TP_STRUCT__entry(
     55		DEV_ENTRY
     56		__field(u32, offs)
     57		__field(u32, val)
     58	),
     59	TP_fast_assign(
     60		DEV_ASSIGN;
     61		__entry->offs = offs;
     62		__entry->val = val;
     63	),
     64	TP_printk("[%s] write io[%#x] = %#x)",
     65		  __get_str(dev), __entry->offs, __entry->val)
     66);
     67
     68TRACE_EVENT(iwlwifi_dev_iowrite64,
     69	TP_PROTO(const struct device *dev, u64 offs, u64 val),
     70	TP_ARGS(dev, offs, val),
     71	TP_STRUCT__entry(
     72		DEV_ENTRY
     73		__field(u64, offs)
     74		__field(u64, val)
     75	),
     76	TP_fast_assign(
     77		DEV_ASSIGN;
     78		__entry->offs = offs;
     79		__entry->val = val;
     80	),
     81	TP_printk("[%s] write io[%llu] = %llu)",
     82		  __get_str(dev), __entry->offs, __entry->val)
     83);
     84
     85TRACE_EVENT(iwlwifi_dev_iowrite_prph32,
     86	TP_PROTO(const struct device *dev, u32 offs, u32 val),
     87	TP_ARGS(dev, offs, val),
     88	TP_STRUCT__entry(
     89		DEV_ENTRY
     90		__field(u32, offs)
     91		__field(u32, val)
     92	),
     93	TP_fast_assign(
     94		DEV_ASSIGN;
     95		__entry->offs = offs;
     96		__entry->val = val;
     97	),
     98	TP_printk("[%s] write PRPH[%#x] = %#x)",
     99		  __get_str(dev), __entry->offs, __entry->val)
    100);
    101
    102TRACE_EVENT(iwlwifi_dev_iowrite_prph64,
    103	TP_PROTO(const struct device *dev, u64 offs, u64 val),
    104	TP_ARGS(dev, offs, val),
    105	TP_STRUCT__entry(
    106		DEV_ENTRY
    107		__field(u64, offs)
    108		__field(u64, val)
    109	),
    110	TP_fast_assign(
    111		DEV_ASSIGN;
    112		__entry->offs = offs;
    113		__entry->val = val;
    114	),
    115	TP_printk("[%s] write PRPH[%llu] = %llu)",
    116		  __get_str(dev), __entry->offs, __entry->val)
    117);
    118
    119TRACE_EVENT(iwlwifi_dev_ioread_prph32,
    120	TP_PROTO(const struct device *dev, u32 offs, u32 val),
    121	TP_ARGS(dev, offs, val),
    122	TP_STRUCT__entry(
    123		DEV_ENTRY
    124		__field(u32, offs)
    125		__field(u32, val)
    126	),
    127	TP_fast_assign(
    128		DEV_ASSIGN;
    129		__entry->offs = offs;
    130		__entry->val = val;
    131	),
    132	TP_printk("[%s] read PRPH[%#x] = %#x",
    133		  __get_str(dev), __entry->offs, __entry->val)
    134);
    135
    136TRACE_EVENT(iwlwifi_dev_irq,
    137	TP_PROTO(const struct device *dev),
    138	TP_ARGS(dev),
    139	TP_STRUCT__entry(
    140		DEV_ENTRY
    141	),
    142	TP_fast_assign(
    143		DEV_ASSIGN;
    144	),
    145	/* TP_printk("") doesn't compile */
    146	TP_printk("%d", 0)
    147);
    148
    149TRACE_EVENT(iwlwifi_dev_irq_msix,
    150	TP_PROTO(const struct device *dev, struct msix_entry *msix_entry,
    151		 bool defirq, u32 inta_fh, u32 inta_hw),
    152	TP_ARGS(dev, msix_entry, defirq, inta_fh, inta_hw),
    153	TP_STRUCT__entry(
    154		DEV_ENTRY
    155		__field(u32, entry)
    156		__field(u8, defirq)
    157		__field(u32, inta_fh)
    158		__field(u32, inta_hw)
    159	),
    160	TP_fast_assign(
    161		DEV_ASSIGN;
    162		__entry->entry = msix_entry->entry;
    163		__entry->defirq = defirq;
    164		__entry->inta_fh = inta_fh;
    165		__entry->inta_hw = inta_hw;
    166	),
    167	TP_printk("entry:%d defirq:%d fh:0x%x, hw:0x%x",
    168		  __entry->entry, __entry->defirq,
    169		  __entry->inta_fh, __entry->inta_hw)
    170);
    171
    172TRACE_EVENT(iwlwifi_dev_ict_read,
    173	TP_PROTO(const struct device *dev, u32 index, u32 value),
    174	TP_ARGS(dev, index, value),
    175	TP_STRUCT__entry(
    176		DEV_ENTRY
    177		__field(u32, index)
    178		__field(u32, value)
    179	),
    180	TP_fast_assign(
    181		DEV_ASSIGN;
    182		__entry->index = index;
    183		__entry->value = value;
    184	),
    185	TP_printk("[%s] read ict[%d] = %#.8x",
    186		  __get_str(dev), __entry->index, __entry->value)
    187);
    188#endif /* __IWLWIFI_DEVICE_TRACE_IO */
    189
    190#undef TRACE_INCLUDE_PATH
    191#define TRACE_INCLUDE_PATH .
    192#undef TRACE_INCLUDE_FILE
    193#define TRACE_INCLUDE_FILE iwl-devtrace-io
    194#include <trace/define_trace.h>