70 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2#undef TRACE_SYSTEM3#define TRACE_SYSTEM vb24 5#if !defined(_TRACE_VB2_H) || defined(TRACE_HEADER_MULTI_READ)6#define _TRACE_VB2_H7 8#include <linux/tracepoint.h>9#include <media/videobuf2-core.h>10 11DECLARE_EVENT_CLASS(vb2_event_class,12 TP_PROTO(struct vb2_queue *q, struct vb2_buffer *vb),13 TP_ARGS(q, vb),14 15 TP_STRUCT__entry(16 __field(void *, owner)17 __field(u32, queued_count)18 __field(int, owned_by_drv_count)19 __field(u32, index)20 __field(u32, type)21 __field(u32, bytesused)22 __field(u64, timestamp)23 ),24 25 TP_fast_assign(26 __entry->owner = q->owner;27 __entry->queued_count = q->queued_count;28 __entry->owned_by_drv_count =29 atomic_read(&q->owned_by_drv_count);30 __entry->index = vb->index;31 __entry->type = vb->type;32 __entry->bytesused = vb->planes[0].bytesused;33 __entry->timestamp = vb->timestamp;34 ),35 36 TP_printk("owner = %p, queued = %u, owned_by_drv = %d, index = %u, "37 "type = %u, bytesused = %u, timestamp = %llu", __entry->owner,38 __entry->queued_count,39 __entry->owned_by_drv_count,40 __entry->index, __entry->type,41 __entry->bytesused,42 __entry->timestamp43 )44)45 46DEFINE_EVENT(vb2_event_class, vb2_buf_done,47 TP_PROTO(struct vb2_queue *q, struct vb2_buffer *vb),48 TP_ARGS(q, vb)49);50 51DEFINE_EVENT(vb2_event_class, vb2_buf_queue,52 TP_PROTO(struct vb2_queue *q, struct vb2_buffer *vb),53 TP_ARGS(q, vb)54);55 56DEFINE_EVENT(vb2_event_class, vb2_dqbuf,57 TP_PROTO(struct vb2_queue *q, struct vb2_buffer *vb),58 TP_ARGS(q, vb)59);60 61DEFINE_EVENT(vb2_event_class, vb2_qbuf,62 TP_PROTO(struct vb2_queue *q, struct vb2_buffer *vb),63 TP_ARGS(q, vb)64);65 66#endif /* if !defined(_TRACE_VB2_H) || defined(TRACE_HEADER_MULTI_READ) */67 68/* This part must be outside protection */69#include <trace/define_trace.h>70