File Index
Files and directories
Sign in
FILE

amdxdna.h

File preview with syntax highlighting.

linux-6.19.14/include/trace/events/amdxdna.h C
  1/* SPDX-License-Identifier: GPL-2.0 */
  2/*
  3 * Copyright (C) 2023-2024, Advanced Micro Devices, Inc.
  4 */
  5
  6#undef TRACE_SYSTEM
  7#define TRACE_SYSTEM amdxdna
  8
  9#if !defined(_TRACE_AMDXDNA_H) || defined(TRACE_HEADER_MULTI_READ)
 10#define _TRACE_AMDXDNA_H
 11
 12#include <drm/gpu_scheduler.h>
 13#include <linux/tracepoint.h>
 14
 15TRACE_EVENT(amdxdna_debug_point,
 16	    TP_PROTO(const char *name, u64 number, const char *str),
 17
 18	    TP_ARGS(name, number, str),
 19
 20	    TP_STRUCT__entry(__string(name, name)
 21			     __field(u64, number)
 22			     __string(str, str)),
 23
 24	    TP_fast_assign(__assign_str(name);
 25			   __entry->number = number;
 26			   __assign_str(str);),
 27
 28	    TP_printk("%s:%llu %s", __get_str(name), __entry->number,
 29		      __get_str(str))
 30);
 31
 32TRACE_EVENT(xdna_job,
 33	    TP_PROTO(struct drm_sched_job *sched_job, const char *name, const char *str, u64 seq),
 34
 35	    TP_ARGS(sched_job, name, str, seq),
 36
 37	    TP_STRUCT__entry(__string(name, name)
 38			     __string(str, str)
 39			     __field(u64, fence_context)
 40			     __field(u64, fence_seqno)
 41			     __field(u64, seq)),
 42
 43	    TP_fast_assign(__assign_str(name);
 44			   __assign_str(str);
 45			   __entry->fence_context = sched_job->s_fence->finished.context;
 46			   __entry->fence_seqno = sched_job->s_fence->finished.seqno;
 47			   __entry->seq = seq;),
 48
 49	    TP_printk("fence=(context:%llu, seqno:%lld), %s seq#:%lld %s",
 50		      __entry->fence_context, __entry->fence_seqno,
 51		      __get_str(name), __entry->seq,
 52		      __get_str(str))
 53);
 54
 55DECLARE_EVENT_CLASS(xdna_mbox_msg,
 56		    TP_PROTO(char *name, u8 chann_id, u32 opcode, u32 msg_id),
 57
 58		    TP_ARGS(name, chann_id, opcode, msg_id),
 59
 60		    TP_STRUCT__entry(__string(name, name)
 61				     __field(u32, chann_id)
 62				     __field(u32, opcode)
 63				     __field(u32, msg_id)),
 64
 65		    TP_fast_assign(__assign_str(name);
 66				   __entry->chann_id = chann_id;
 67				   __entry->opcode = opcode;
 68				   __entry->msg_id = msg_id;),
 69
 70		    TP_printk("%s.%d id 0x%x opcode 0x%x", __get_str(name),
 71			      __entry->chann_id, __entry->msg_id, __entry->opcode)
 72);
 73
 74DEFINE_EVENT(xdna_mbox_msg, mbox_set_tail,
 75	     TP_PROTO(char *name, u8 chann_id, u32 opcode, u32 id),
 76	     TP_ARGS(name, chann_id, opcode, id)
 77);
 78
 79DEFINE_EVENT(xdna_mbox_msg, mbox_set_head,
 80	     TP_PROTO(char *name, u8 chann_id, u32 opcode, u32 id),
 81	     TP_ARGS(name, chann_id, opcode, id)
 82);
 83
 84TRACE_EVENT(mbox_irq_handle,
 85	    TP_PROTO(char *name, int irq),
 86
 87	    TP_ARGS(name, irq),
 88
 89	    TP_STRUCT__entry(__string(name, name)
 90			     __field(int, irq)),
 91
 92	    TP_fast_assign(__assign_str(name);
 93			   __entry->irq = irq;),
 94
 95	    TP_printk("%s.%d", __get_str(name), __entry->irq)
 96);
 97
 98#endif /* !defined(_TRACE_AMDXDNA_H) || defined(TRACE_HEADER_MULTI_READ) */
 99
100/* This part must be outside protection */
101#include <trace/define_trace.h>
~/ Read-only file preview.