^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0-or-later */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) /*
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) * Copyright 2015 IBM Corp.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) #undef TRACE_SYSTEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7) #define TRACE_SYSTEM cxl
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) #if !defined(_CXL_TRACE_H) || defined(TRACE_HEADER_MULTI_READ)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) #define _CXL_TRACE_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) #include <linux/tracepoint.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) #include "cxl.h"
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) #define dsisr_psl9_flags(flags) \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) __print_flags(flags, "|", \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18) { CXL_PSL9_DSISR_An_CO_MASK, "FR" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) { CXL_PSL9_DSISR_An_TF, "TF" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) { CXL_PSL9_DSISR_An_PE, "PE" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) { CXL_PSL9_DSISR_An_AE, "AE" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) { CXL_PSL9_DSISR_An_OC, "OC" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) { CXL_PSL9_DSISR_An_S, "S" })
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) #define DSISR_FLAGS \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) { CXL_PSL_DSISR_An_DS, "DS" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) { CXL_PSL_DSISR_An_DM, "DM" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) { CXL_PSL_DSISR_An_ST, "ST" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) { CXL_PSL_DSISR_An_UR, "UR" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) { CXL_PSL_DSISR_An_PE, "PE" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) { CXL_PSL_DSISR_An_AE, "AE" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) { CXL_PSL_DSISR_An_OC, "OC" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) { CXL_PSL_DSISR_An_M, "M" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) { CXL_PSL_DSISR_An_P, "P" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) { CXL_PSL_DSISR_An_A, "A" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) { CXL_PSL_DSISR_An_S, "S" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) { CXL_PSL_DSISR_An_K, "K" }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39) #define TFC_FLAGS \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) { CXL_PSL_TFC_An_A, "A" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41) { CXL_PSL_TFC_An_C, "C" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) { CXL_PSL_TFC_An_AE, "AE" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) { CXL_PSL_TFC_An_R, "R" }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 44)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 45) #define LLCMD_NAMES \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 46) { CXL_SPA_SW_CMD_TERMINATE, "TERMINATE" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 47) { CXL_SPA_SW_CMD_REMOVE, "REMOVE" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 48) { CXL_SPA_SW_CMD_SUSPEND, "SUSPEND" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 49) { CXL_SPA_SW_CMD_RESUME, "RESUME" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 50) { CXL_SPA_SW_CMD_ADD, "ADD" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 51) { CXL_SPA_SW_CMD_UPDATE, "UPDATE" }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 52)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 53) #define AFU_COMMANDS \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 54) { 0, "DISABLE" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 55) { CXL_AFU_Cntl_An_E, "ENABLE" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 56) { CXL_AFU_Cntl_An_RA, "RESET" }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 57)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 58) #define PSL_COMMANDS \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 59) { CXL_PSL_SCNTL_An_Pc, "PURGE" }, \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 60) { CXL_PSL_SCNTL_An_Sc, "SUSPEND" }
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 61)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 62)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 63) DECLARE_EVENT_CLASS(cxl_pe_class,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 64) TP_PROTO(struct cxl_context *ctx),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 65)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 66) TP_ARGS(ctx),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 67)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 68) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 69) __field(u8, card)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 70) __field(u8, afu)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 71) __field(u16, pe)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 72) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 73)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 74) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 75) __entry->card = ctx->afu->adapter->adapter_num;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 76) __entry->afu = ctx->afu->slice;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 77) __entry->pe = ctx->pe;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 78) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 79)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 80) TP_printk("afu%i.%i pe=%i",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 81) __entry->card,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 82) __entry->afu,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 83) __entry->pe
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 84) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 85) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 86)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 87)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 88) TRACE_EVENT(cxl_attach,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 89) TP_PROTO(struct cxl_context *ctx, u64 wed, s16 num_interrupts, u64 amr),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 90)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 91) TP_ARGS(ctx, wed, num_interrupts, amr),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 92)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 93) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 94) __field(u8, card)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 95) __field(u8, afu)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 96) __field(u16, pe)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 97) __field(pid_t, pid)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 98) __field(u64, wed)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 99) __field(u64, amr)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 100) __field(s16, num_interrupts)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 101) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 102)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 103) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 104) __entry->card = ctx->afu->adapter->adapter_num;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 105) __entry->afu = ctx->afu->slice;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 106) __entry->pe = ctx->pe;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 107) __entry->pid = pid_nr(ctx->pid);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 108) __entry->wed = wed;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 109) __entry->amr = amr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 110) __entry->num_interrupts = num_interrupts;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 111) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 112)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 113) TP_printk("afu%i.%i pid=%i pe=%i wed=0x%016llx irqs=%i amr=0x%llx",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 114) __entry->card,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 115) __entry->afu,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 116) __entry->pid,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 117) __entry->pe,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 118) __entry->wed,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 119) __entry->num_interrupts,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 120) __entry->amr
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 121) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 122) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 123)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 124) DEFINE_EVENT(cxl_pe_class, cxl_detach,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 125) TP_PROTO(struct cxl_context *ctx),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 126) TP_ARGS(ctx)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 127) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 128)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 129) TRACE_EVENT(cxl_afu_irq,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 130) TP_PROTO(struct cxl_context *ctx, int afu_irq, int virq, irq_hw_number_t hwirq),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 131)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 132) TP_ARGS(ctx, afu_irq, virq, hwirq),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 133)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 134) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 135) __field(u8, card)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 136) __field(u8, afu)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 137) __field(u16, pe)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 138) __field(u16, afu_irq)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 139) __field(int, virq)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 140) __field(irq_hw_number_t, hwirq)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 141) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 142)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 143) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 144) __entry->card = ctx->afu->adapter->adapter_num;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 145) __entry->afu = ctx->afu->slice;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 146) __entry->pe = ctx->pe;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 147) __entry->afu_irq = afu_irq;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 148) __entry->virq = virq;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 149) __entry->hwirq = hwirq;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 150) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 151)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 152) TP_printk("afu%i.%i pe=%i afu_irq=%i virq=%i hwirq=0x%lx",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 153) __entry->card,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 154) __entry->afu,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 155) __entry->pe,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 156) __entry->afu_irq,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 157) __entry->virq,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 158) __entry->hwirq
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 159) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 160) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 161)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 162) TRACE_EVENT(cxl_psl9_irq,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 163) TP_PROTO(struct cxl_context *ctx, int irq, u64 dsisr, u64 dar),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 164)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 165) TP_ARGS(ctx, irq, dsisr, dar),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 166)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 167) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 168) __field(u8, card)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 169) __field(u8, afu)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 170) __field(u16, pe)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 171) __field(int, irq)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 172) __field(u64, dsisr)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 173) __field(u64, dar)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 174) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 175)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 176) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 177) __entry->card = ctx->afu->adapter->adapter_num;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 178) __entry->afu = ctx->afu->slice;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 179) __entry->pe = ctx->pe;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 180) __entry->irq = irq;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 181) __entry->dsisr = dsisr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 182) __entry->dar = dar;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 183) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 184)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 185) TP_printk("afu%i.%i pe=%i irq=%i dsisr=0x%016llx dsisr=%s dar=0x%016llx",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 186) __entry->card,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 187) __entry->afu,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 188) __entry->pe,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 189) __entry->irq,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 190) __entry->dsisr,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 191) dsisr_psl9_flags(__entry->dsisr),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 192) __entry->dar
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 193) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 194) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 195)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 196) TRACE_EVENT(cxl_psl_irq,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 197) TP_PROTO(struct cxl_context *ctx, int irq, u64 dsisr, u64 dar),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 198)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 199) TP_ARGS(ctx, irq, dsisr, dar),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 200)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 201) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 202) __field(u8, card)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 203) __field(u8, afu)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 204) __field(u16, pe)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 205) __field(int, irq)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 206) __field(u64, dsisr)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 207) __field(u64, dar)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 208) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 209)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 210) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 211) __entry->card = ctx->afu->adapter->adapter_num;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 212) __entry->afu = ctx->afu->slice;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 213) __entry->pe = ctx->pe;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 214) __entry->irq = irq;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 215) __entry->dsisr = dsisr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 216) __entry->dar = dar;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 217) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 218)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 219) TP_printk("afu%i.%i pe=%i irq=%i dsisr=%s dar=0x%016llx",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 220) __entry->card,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 221) __entry->afu,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 222) __entry->pe,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 223) __entry->irq,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 224) __print_flags(__entry->dsisr, "|", DSISR_FLAGS),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 225) __entry->dar
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 226) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 227) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 228)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 229) TRACE_EVENT(cxl_psl_irq_ack,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 230) TP_PROTO(struct cxl_context *ctx, u64 tfc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 231)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 232) TP_ARGS(ctx, tfc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 233)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 234) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 235) __field(u8, card)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 236) __field(u8, afu)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 237) __field(u16, pe)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 238) __field(u64, tfc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 239) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 240)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 241) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 242) __entry->card = ctx->afu->adapter->adapter_num;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 243) __entry->afu = ctx->afu->slice;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 244) __entry->pe = ctx->pe;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 245) __entry->tfc = tfc;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 246) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 247)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 248) TP_printk("afu%i.%i pe=%i tfc=%s",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 249) __entry->card,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 250) __entry->afu,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 251) __entry->pe,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 252) __print_flags(__entry->tfc, "|", TFC_FLAGS)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 253) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 254) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 255)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 256) TRACE_EVENT(cxl_ste_miss,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 257) TP_PROTO(struct cxl_context *ctx, u64 dar),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 258)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 259) TP_ARGS(ctx, dar),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 260)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 261) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 262) __field(u8, card)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 263) __field(u8, afu)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 264) __field(u16, pe)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 265) __field(u64, dar)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 266) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 267)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 268) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 269) __entry->card = ctx->afu->adapter->adapter_num;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 270) __entry->afu = ctx->afu->slice;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 271) __entry->pe = ctx->pe;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 272) __entry->dar = dar;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 273) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 274)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 275) TP_printk("afu%i.%i pe=%i dar=0x%016llx",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 276) __entry->card,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 277) __entry->afu,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 278) __entry->pe,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 279) __entry->dar
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 280) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 281) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 282)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 283) TRACE_EVENT(cxl_ste_write,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 284) TP_PROTO(struct cxl_context *ctx, unsigned int idx, u64 e, u64 v),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 285)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 286) TP_ARGS(ctx, idx, e, v),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 287)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 288) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 289) __field(u8, card)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 290) __field(u8, afu)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 291) __field(u16, pe)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 292) __field(unsigned int, idx)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 293) __field(u64, e)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 294) __field(u64, v)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 295) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 296)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 297) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 298) __entry->card = ctx->afu->adapter->adapter_num;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 299) __entry->afu = ctx->afu->slice;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 300) __entry->pe = ctx->pe;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 301) __entry->idx = idx;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 302) __entry->e = e;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 303) __entry->v = v;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 304) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 305)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 306) TP_printk("afu%i.%i pe=%i SSTE[%i] E=0x%016llx V=0x%016llx",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 307) __entry->card,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 308) __entry->afu,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 309) __entry->pe,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 310) __entry->idx,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 311) __entry->e,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 312) __entry->v
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 313) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 314) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 315)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 316) TRACE_EVENT(cxl_pte_miss,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 317) TP_PROTO(struct cxl_context *ctx, u64 dsisr, u64 dar),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 318)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 319) TP_ARGS(ctx, dsisr, dar),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 320)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 321) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 322) __field(u8, card)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 323) __field(u8, afu)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 324) __field(u16, pe)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 325) __field(u64, dsisr)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 326) __field(u64, dar)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 327) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 328)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 329) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 330) __entry->card = ctx->afu->adapter->adapter_num;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 331) __entry->afu = ctx->afu->slice;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 332) __entry->pe = ctx->pe;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 333) __entry->dsisr = dsisr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 334) __entry->dar = dar;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 335) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 336)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 337) TP_printk("afu%i.%i pe=%i dsisr=%s dar=0x%016llx",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 338) __entry->card,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 339) __entry->afu,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 340) __entry->pe,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 341) __print_flags(__entry->dsisr, "|", DSISR_FLAGS),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 342) __entry->dar
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 343) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 344) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 345)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 346) TRACE_EVENT(cxl_llcmd,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 347) TP_PROTO(struct cxl_context *ctx, u64 cmd),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 348)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 349) TP_ARGS(ctx, cmd),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 350)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 351) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 352) __field(u8, card)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 353) __field(u8, afu)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 354) __field(u16, pe)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 355) __field(u64, cmd)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 356) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 357)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 358) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 359) __entry->card = ctx->afu->adapter->adapter_num;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 360) __entry->afu = ctx->afu->slice;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 361) __entry->pe = ctx->pe;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 362) __entry->cmd = cmd;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 363) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 364)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 365) TP_printk("afu%i.%i pe=%i cmd=%s",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 366) __entry->card,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 367) __entry->afu,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 368) __entry->pe,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 369) __print_symbolic_u64(__entry->cmd, LLCMD_NAMES)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 370) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 371) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 372)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 373) TRACE_EVENT(cxl_llcmd_done,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 374) TP_PROTO(struct cxl_context *ctx, u64 cmd, int rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 375)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 376) TP_ARGS(ctx, cmd, rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 377)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 378) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 379) __field(u8, card)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 380) __field(u8, afu)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 381) __field(u16, pe)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 382) __field(u64, cmd)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 383) __field(int, rc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 384) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 385)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 386) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 387) __entry->card = ctx->afu->adapter->adapter_num;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 388) __entry->afu = ctx->afu->slice;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 389) __entry->pe = ctx->pe;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 390) __entry->rc = rc;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 391) __entry->cmd = cmd;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 392) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 393)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 394) TP_printk("afu%i.%i pe=%i cmd=%s rc=%i",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 395) __entry->card,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 396) __entry->afu,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 397) __entry->pe,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 398) __print_symbolic_u64(__entry->cmd, LLCMD_NAMES),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 399) __entry->rc
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 400) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 401) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 402)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 403) DECLARE_EVENT_CLASS(cxl_afu_psl_ctrl,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 404) TP_PROTO(struct cxl_afu *afu, u64 cmd),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 405)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 406) TP_ARGS(afu, cmd),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 407)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 408) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 409) __field(u8, card)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 410) __field(u8, afu)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 411) __field(u64, cmd)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 412) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 413)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 414) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 415) __entry->card = afu->adapter->adapter_num;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 416) __entry->afu = afu->slice;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 417) __entry->cmd = cmd;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 418) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 419)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 420) TP_printk("afu%i.%i cmd=%s",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 421) __entry->card,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 422) __entry->afu,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 423) __print_symbolic_u64(__entry->cmd, AFU_COMMANDS)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 424) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 425) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 426)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 427) DECLARE_EVENT_CLASS(cxl_afu_psl_ctrl_done,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 428) TP_PROTO(struct cxl_afu *afu, u64 cmd, int rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 429)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 430) TP_ARGS(afu, cmd, rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 431)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 432) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 433) __field(u8, card)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 434) __field(u8, afu)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 435) __field(u64, cmd)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 436) __field(int, rc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 437) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 438)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 439) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 440) __entry->card = afu->adapter->adapter_num;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 441) __entry->afu = afu->slice;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 442) __entry->rc = rc;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 443) __entry->cmd = cmd;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 444) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 445)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 446) TP_printk("afu%i.%i cmd=%s rc=%i",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 447) __entry->card,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 448) __entry->afu,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 449) __print_symbolic_u64(__entry->cmd, AFU_COMMANDS),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 450) __entry->rc
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 451) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 452) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 453)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 454) DEFINE_EVENT(cxl_afu_psl_ctrl, cxl_afu_ctrl,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 455) TP_PROTO(struct cxl_afu *afu, u64 cmd),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 456) TP_ARGS(afu, cmd)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 457) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 458)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 459) DEFINE_EVENT(cxl_afu_psl_ctrl_done, cxl_afu_ctrl_done,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 460) TP_PROTO(struct cxl_afu *afu, u64 cmd, int rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 461) TP_ARGS(afu, cmd, rc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 462) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 463)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 464) DEFINE_EVENT_PRINT(cxl_afu_psl_ctrl, cxl_psl_ctrl,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 465) TP_PROTO(struct cxl_afu *afu, u64 cmd),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 466) TP_ARGS(afu, cmd),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 467)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 468) TP_printk("psl%i.%i cmd=%s",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 469) __entry->card,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 470) __entry->afu,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 471) __print_symbolic_u64(__entry->cmd, PSL_COMMANDS)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 472) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 473) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 474)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 475) DEFINE_EVENT_PRINT(cxl_afu_psl_ctrl_done, cxl_psl_ctrl_done,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 476) TP_PROTO(struct cxl_afu *afu, u64 cmd, int rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 477) TP_ARGS(afu, cmd, rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 478)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 479) TP_printk("psl%i.%i cmd=%s rc=%i",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 480) __entry->card,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 481) __entry->afu,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 482) __print_symbolic_u64(__entry->cmd, PSL_COMMANDS),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 483) __entry->rc
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 484) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 485) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 486)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 487) DEFINE_EVENT(cxl_pe_class, cxl_slbia,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 488) TP_PROTO(struct cxl_context *ctx),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 489) TP_ARGS(ctx)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 490) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 491)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 492) TRACE_EVENT(cxl_hcall,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 493) TP_PROTO(u64 unit_address, u64 process_token, long rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 494)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 495) TP_ARGS(unit_address, process_token, rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 496)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 497) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 498) __field(u64, unit_address)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 499) __field(u64, process_token)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 500) __field(long, rc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 501) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 502)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 503) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 504) __entry->unit_address = unit_address;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 505) __entry->process_token = process_token;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 506) __entry->rc = rc;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 507) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 508)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 509) TP_printk("unit_address=0x%016llx process_token=0x%016llx rc=%li",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 510) __entry->unit_address,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 511) __entry->process_token,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 512) __entry->rc
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 513) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 514) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 515)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 516) TRACE_EVENT(cxl_hcall_control,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 517) TP_PROTO(u64 unit_address, char *fct, u64 p1, u64 p2, u64 p3,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 518) u64 p4, unsigned long r4, long rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 519)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 520) TP_ARGS(unit_address, fct, p1, p2, p3, p4, r4, rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 521)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 522) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 523) __field(u64, unit_address)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 524) __field(char *, fct)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 525) __field(u64, p1)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 526) __field(u64, p2)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 527) __field(u64, p3)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 528) __field(u64, p4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 529) __field(unsigned long, r4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 530) __field(long, rc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 531) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 532)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 533) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 534) __entry->unit_address = unit_address;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 535) __entry->fct = fct;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 536) __entry->p1 = p1;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 537) __entry->p2 = p2;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 538) __entry->p3 = p3;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 539) __entry->p4 = p4;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 540) __entry->r4 = r4;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 541) __entry->rc = rc;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 542) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 543)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 544) TP_printk("unit_address=%#.16llx %s(%#llx, %#llx, %#llx, %#llx, R4: %#lx)): %li",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 545) __entry->unit_address,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 546) __entry->fct,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 547) __entry->p1,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 548) __entry->p2,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 549) __entry->p3,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 550) __entry->p4,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 551) __entry->r4,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 552) __entry->rc
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 553) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 554) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 555)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 556) TRACE_EVENT(cxl_hcall_attach,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 557) TP_PROTO(u64 unit_address, u64 phys_addr, unsigned long process_token,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 558) unsigned long mmio_addr, unsigned long mmio_size, long rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 559)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 560) TP_ARGS(unit_address, phys_addr, process_token,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 561) mmio_addr, mmio_size, rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 562)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 563) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 564) __field(u64, unit_address)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 565) __field(u64, phys_addr)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 566) __field(unsigned long, process_token)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 567) __field(unsigned long, mmio_addr)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 568) __field(unsigned long, mmio_size)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 569) __field(long, rc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 570) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 571)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 572) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 573) __entry->unit_address = unit_address;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 574) __entry->phys_addr = phys_addr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 575) __entry->process_token = process_token;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 576) __entry->mmio_addr = mmio_addr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 577) __entry->mmio_size = mmio_size;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 578) __entry->rc = rc;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 579) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 580)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 581) TP_printk("unit_address=0x%016llx phys_addr=0x%016llx "
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 582) "token=0x%.8lx mmio_addr=0x%lx mmio_size=0x%lx rc=%li",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 583) __entry->unit_address,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 584) __entry->phys_addr,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 585) __entry->process_token,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 586) __entry->mmio_addr,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 587) __entry->mmio_size,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 588) __entry->rc
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 589) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 590) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 591)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 592) DEFINE_EVENT(cxl_hcall, cxl_hcall_detach,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 593) TP_PROTO(u64 unit_address, u64 process_token, long rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 594) TP_ARGS(unit_address, process_token, rc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 595) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 596)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 597) DEFINE_EVENT(cxl_hcall_control, cxl_hcall_control_function,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 598) TP_PROTO(u64 unit_address, char *fct, u64 p1, u64 p2, u64 p3,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 599) u64 p4, unsigned long r4, long rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 600) TP_ARGS(unit_address, fct, p1, p2, p3, p4, r4, rc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 601) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 602)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 603) DEFINE_EVENT(cxl_hcall, cxl_hcall_collect_int_info,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 604) TP_PROTO(u64 unit_address, u64 process_token, long rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 605) TP_ARGS(unit_address, process_token, rc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 606) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 607)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 608) TRACE_EVENT(cxl_hcall_control_faults,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 609) TP_PROTO(u64 unit_address, u64 process_token,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 610) u64 control_mask, u64 reset_mask, unsigned long r4,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 611) long rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 612)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 613) TP_ARGS(unit_address, process_token,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 614) control_mask, reset_mask, r4, rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 615)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 616) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 617) __field(u64, unit_address)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 618) __field(u64, process_token)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 619) __field(u64, control_mask)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 620) __field(u64, reset_mask)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 621) __field(unsigned long, r4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 622) __field(long, rc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 623) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 624)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 625) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 626) __entry->unit_address = unit_address;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 627) __entry->process_token = process_token;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 628) __entry->control_mask = control_mask;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 629) __entry->reset_mask = reset_mask;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 630) __entry->r4 = r4;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 631) __entry->rc = rc;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 632) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 633)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 634) TP_printk("unit_address=0x%016llx process_token=0x%llx "
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 635) "control_mask=%#llx reset_mask=%#llx r4=%#lx rc=%li",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 636) __entry->unit_address,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 637) __entry->process_token,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 638) __entry->control_mask,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 639) __entry->reset_mask,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 640) __entry->r4,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 641) __entry->rc
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 642) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 643) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 644)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 645) DEFINE_EVENT(cxl_hcall_control, cxl_hcall_control_facility,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 646) TP_PROTO(u64 unit_address, char *fct, u64 p1, u64 p2, u64 p3,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 647) u64 p4, unsigned long r4, long rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 648) TP_ARGS(unit_address, fct, p1, p2, p3, p4, r4, rc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 649) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 650)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 651) TRACE_EVENT(cxl_hcall_download_facility,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 652) TP_PROTO(u64 unit_address, char *fct, u64 list_address, u64 num,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 653) unsigned long r4, long rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 654)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 655) TP_ARGS(unit_address, fct, list_address, num, r4, rc),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 656)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 657) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 658) __field(u64, unit_address)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 659) __field(char *, fct)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 660) __field(u64, list_address)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 661) __field(u64, num)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 662) __field(unsigned long, r4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 663) __field(long, rc)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 664) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 665)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 666) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 667) __entry->unit_address = unit_address;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 668) __entry->fct = fct;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 669) __entry->list_address = list_address;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 670) __entry->num = num;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 671) __entry->r4 = r4;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 672) __entry->rc = rc;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 673) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 674)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 675) TP_printk("%#.16llx, %s(%#llx, %#llx), %#lx): %li",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 676) __entry->unit_address,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 677) __entry->fct,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 678) __entry->list_address,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 679) __entry->num,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 680) __entry->r4,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 681) __entry->rc
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 682) )
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 683) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 684)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 685) #endif /* _CXL_TRACE_H */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 686)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 687) /* This part must be outside protection */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 688) #undef TRACE_INCLUDE_PATH
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 689) #define TRACE_INCLUDE_PATH .
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 690) #define TRACE_INCLUDE_FILE trace
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 691) #include <trace/define_trace.h>