199ee7facSDave Airlie #if !defined(_RADEON_TRACE_H) || defined(TRACE_HEADER_MULTI_READ) 299ee7facSDave Airlie #define _RADEON_TRACE_H_ 399ee7facSDave Airlie 499ee7facSDave Airlie #include <linux/stringify.h> 599ee7facSDave Airlie #include <linux/types.h> 699ee7facSDave Airlie #include <linux/tracepoint.h> 799ee7facSDave Airlie 899ee7facSDave Airlie #include <drm/drmP.h> 999ee7facSDave Airlie 1099ee7facSDave Airlie #undef TRACE_SYSTEM 1199ee7facSDave Airlie #define TRACE_SYSTEM radeon 1299ee7facSDave Airlie #define TRACE_SYSTEM_STRING __stringify(TRACE_SYSTEM) 1399ee7facSDave Airlie #define TRACE_INCLUDE_FILE radeon_trace 1499ee7facSDave Airlie 1599ee7facSDave Airlie TRACE_EVENT(radeon_bo_create, 1699ee7facSDave Airlie TP_PROTO(struct radeon_bo *bo), 1799ee7facSDave Airlie TP_ARGS(bo), 1899ee7facSDave Airlie TP_STRUCT__entry( 1999ee7facSDave Airlie __field(struct radeon_bo *, bo) 2099ee7facSDave Airlie __field(u32, pages) 2199ee7facSDave Airlie ), 2299ee7facSDave Airlie 2399ee7facSDave Airlie TP_fast_assign( 2499ee7facSDave Airlie __entry->bo = bo; 2599ee7facSDave Airlie __entry->pages = bo->tbo.num_pages; 2699ee7facSDave Airlie ), 2799ee7facSDave Airlie TP_printk("bo=%p, pages=%u", __entry->bo, __entry->pages) 2899ee7facSDave Airlie ); 2999ee7facSDave Airlie 3099ee7facSDave Airlie DECLARE_EVENT_CLASS(radeon_fence_request, 3199ee7facSDave Airlie 3299ee7facSDave Airlie TP_PROTO(struct drm_device *dev, u32 seqno), 3399ee7facSDave Airlie 3499ee7facSDave Airlie TP_ARGS(dev, seqno), 3599ee7facSDave Airlie 3699ee7facSDave Airlie TP_STRUCT__entry( 3799ee7facSDave Airlie __field(u32, dev) 3899ee7facSDave Airlie __field(u32, seqno) 3999ee7facSDave Airlie ), 4099ee7facSDave Airlie 4199ee7facSDave Airlie TP_fast_assign( 4299ee7facSDave Airlie __entry->dev = dev->primary->index; 4399ee7facSDave Airlie __entry->seqno = seqno; 4499ee7facSDave Airlie ), 4599ee7facSDave Airlie 4699ee7facSDave Airlie TP_printk("dev=%u, seqno=%u", __entry->dev, __entry->seqno) 4799ee7facSDave Airlie ); 4899ee7facSDave Airlie 4999ee7facSDave Airlie DEFINE_EVENT(radeon_fence_request, radeon_fence_emit, 5099ee7facSDave Airlie 5199ee7facSDave Airlie TP_PROTO(struct drm_device *dev, u32 seqno), 5299ee7facSDave Airlie 5399ee7facSDave Airlie TP_ARGS(dev, seqno) 5499ee7facSDave Airlie ); 5599ee7facSDave Airlie 5699ee7facSDave Airlie DEFINE_EVENT(radeon_fence_request, radeon_fence_retire, 5799ee7facSDave Airlie 5899ee7facSDave Airlie TP_PROTO(struct drm_device *dev, u32 seqno), 5999ee7facSDave Airlie 6099ee7facSDave Airlie TP_ARGS(dev, seqno) 6199ee7facSDave Airlie ); 6299ee7facSDave Airlie 6399ee7facSDave Airlie DEFINE_EVENT(radeon_fence_request, radeon_fence_wait_begin, 6499ee7facSDave Airlie 6599ee7facSDave Airlie TP_PROTO(struct drm_device *dev, u32 seqno), 6699ee7facSDave Airlie 6799ee7facSDave Airlie TP_ARGS(dev, seqno) 6899ee7facSDave Airlie ); 6999ee7facSDave Airlie 7099ee7facSDave Airlie DEFINE_EVENT(radeon_fence_request, radeon_fence_wait_end, 7199ee7facSDave Airlie 7299ee7facSDave Airlie TP_PROTO(struct drm_device *dev, u32 seqno), 7399ee7facSDave Airlie 7499ee7facSDave Airlie TP_ARGS(dev, seqno) 7599ee7facSDave Airlie ); 7699ee7facSDave Airlie 7799ee7facSDave Airlie #endif 7899ee7facSDave Airlie 7999ee7facSDave Airlie /* This part must be outside protection */ 8099ee7facSDave Airlie #undef TRACE_INCLUDE_PATH 8199ee7facSDave Airlie #define TRACE_INCLUDE_PATH . 8299ee7facSDave Airlie #include <trace/define_trace.h> 83