| /* SPDX-License-Identifier: GPL-2.0 */ |
| /* Marvell RVU Admin Function driver |
| * |
| * Copyright (C) 2020 Marvell. |
| * |
| */ |
| |
| #undef TRACE_SYSTEM |
| #define TRACE_SYSTEM rvu |
| |
| #if !defined(__RVU_TRACE_H) || defined(TRACE_HEADER_MULTI_READ) |
| #define __RVU_TRACE_H |
| |
| #include <linux/types.h> |
| #include <linux/tracepoint.h> |
| #include <linux/pci.h> |
| |
| #include "mbox.h" |
| |
| TRACE_EVENT(otx2_msg_alloc, |
| TP_PROTO(const struct pci_dev *pdev, u16 id, u64 size), |
| TP_ARGS(pdev, id, size), |
| TP_STRUCT__entry(__string(dev, pci_name(pdev)) |
| __field(u16, id) |
| __field(u64, size) |
| ), |
| TP_fast_assign(__assign_str(dev, pci_name(pdev)); |
| __entry->id = id; |
| __entry->size = size; |
| ), |
| TP_printk("[%s] msg:(%s) size:%lld\n", __get_str(dev), |
| otx2_mbox_id2name(__entry->id), __entry->size) |
| ); |
| |
| TRACE_EVENT(otx2_msg_send, |
| TP_PROTO(const struct pci_dev *pdev, u16 num_msgs, u64 msg_size), |
| TP_ARGS(pdev, num_msgs, msg_size), |
| TP_STRUCT__entry(__string(dev, pci_name(pdev)) |
| __field(u16, num_msgs) |
| __field(u64, msg_size) |
| ), |
| TP_fast_assign(__assign_str(dev, pci_name(pdev)); |
| __entry->num_msgs = num_msgs; |
| __entry->msg_size = msg_size; |
| ), |
| TP_printk("[%s] sent %d msg(s) of size:%lld\n", __get_str(dev), |
| __entry->num_msgs, __entry->msg_size) |
| ); |
| |
| TRACE_EVENT(otx2_msg_check, |
| TP_PROTO(const struct pci_dev *pdev, u16 reqid, u16 rspid, int rc), |
| TP_ARGS(pdev, reqid, rspid, rc), |
| TP_STRUCT__entry(__string(dev, pci_name(pdev)) |
| __field(u16, reqid) |
| __field(u16, rspid) |
| __field(int, rc) |
| ), |
| TP_fast_assign(__assign_str(dev, pci_name(pdev)); |
| __entry->reqid = reqid; |
| __entry->rspid = rspid; |
| __entry->rc = rc; |
| ), |
| TP_printk("[%s] req->id:0x%x rsp->id:0x%x resp_code:%d\n", |
| __get_str(dev), __entry->reqid, |
| __entry->rspid, __entry->rc) |
| ); |
| |
| TRACE_EVENT(otx2_msg_interrupt, |
| TP_PROTO(const struct pci_dev *pdev, const char *msg, u64 intr), |
| TP_ARGS(pdev, msg, intr), |
| TP_STRUCT__entry(__string(dev, pci_name(pdev)) |
| __string(str, msg) |
| __field(u64, intr) |
| ), |
| TP_fast_assign(__assign_str(dev, pci_name(pdev)); |
| __assign_str(str, msg); |
| __entry->intr = intr; |
| ), |
| TP_printk("[%s] mbox interrupt %s (0x%llx)\n", __get_str(dev), |
| __get_str(str), __entry->intr) |
| ); |
| |
| TRACE_EVENT(otx2_msg_process, |
| TP_PROTO(const struct pci_dev *pdev, u16 id, int err), |
| TP_ARGS(pdev, id, err), |
| TP_STRUCT__entry(__string(dev, pci_name(pdev)) |
| __field(u16, id) |
| __field(int, err) |
| ), |
| TP_fast_assign(__assign_str(dev, pci_name(pdev)); |
| __entry->id = id; |
| __entry->err = err; |
| ), |
| TP_printk("[%s] msg:(%s) error:%d\n", __get_str(dev), |
| otx2_mbox_id2name(__entry->id), __entry->err) |
| ); |
| |
| #endif /* __RVU_TRACE_H */ |
| |
| #undef TRACE_INCLUDE_PATH |
| #define TRACE_INCLUDE_PATH . |
| |
| #undef TRACE_INCLUDE_FILE |
| #define TRACE_INCLUDE_FILE rvu_trace |
| |
| #include <trace/define_trace.h> |