| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- /* SPDX-License-Identifier: GPL-2.0-only */
- /*
- * Copyright (C) 2020-2024 Intel Corporation
- */
- #if !defined(__IVPU_TRACE_H__) || defined(TRACE_HEADER_MULTI_READ)
- #define __IVPU_TRACE_H__
- #include <linux/tracepoint.h>
- #include "ivpu_drv.h"
- #include "ivpu_job.h"
- #include "vpu_jsm_api.h"
- #include "ivpu_jsm_msg.h"
- #include "ivpu_ipc.h"
- #undef TRACE_SYSTEM
- #define TRACE_SYSTEM vpu
- #define TRACE_INCLUDE_FILE ivpu_trace
- TRACE_EVENT(pm,
- TP_PROTO(const char *event),
- TP_ARGS(event),
- TP_STRUCT__entry(__field(const char *, event)),
- TP_fast_assign(__entry->event = event;),
- TP_printk("%s", __entry->event)
- );
- TRACE_EVENT(job,
- TP_PROTO(const char *event, struct ivpu_job *job),
- TP_ARGS(event, job),
- TP_STRUCT__entry(__field(const char *, event)
- __field(u32, ctx_id)
- __field(u32, engine_id)
- __field(u32, job_id)
- ),
- TP_fast_assign(__entry->event = event;
- __entry->ctx_id = job->file_priv->ctx.id;
- __entry->engine_id = job->engine_idx;
- __entry->job_id = job->job_id;),
- TP_printk("%s context:%d engine:%d job:%d",
- __entry->event,
- __entry->ctx_id,
- __entry->engine_id,
- __entry->job_id)
- );
- TRACE_EVENT(jsm,
- TP_PROTO(const char *event, struct vpu_jsm_msg *msg),
- TP_ARGS(event, msg),
- TP_STRUCT__entry(__field(const char *, event)
- __field(const char *, type)
- __field(enum vpu_ipc_msg_status, status)
- __field(u32, request_id)
- __field(u32, result)
- ),
- TP_fast_assign(__entry->event = event;
- __entry->type = ivpu_jsm_msg_type_to_str(msg->type);
- __entry->status = msg->status;
- __entry->request_id = msg->request_id;
- __entry->result = msg->result;),
- TP_printk("%s type:%s, status:%#x, id:%#x, result:%#x",
- __entry->event,
- __entry->type,
- __entry->status,
- __entry->request_id,
- __entry->result)
- );
- #endif /* __IVPU_TRACE_H__ */
- #undef TRACE_INCLUDE_PATH
- #define TRACE_INCLUDE_PATH .
- #include <trace/define_trace.h>
|