Path: blob/master/sound/firewire/motu/amdtp-motu-trace.h
26451 views
/* SPDX-License-Identifier: GPL-2.0-only */1/*2* amdtp-motu-trace.h - tracepoint definitions to dump a part of packet data3*4* Copyright (c) 2017 Takashi Sakamoto5*/67#undef TRACE_SYSTEM8#define TRACE_SYSTEM snd_firewire_motu910#if !defined(_SND_FIREWIRE_MOTU_TRACE_H) || defined(TRACE_HEADER_MULTI_READ)11#define _SND_FIREWIRE_MOTU_TRACE_H1213#include <linux/tracepoint.h>1415static void copy_sph(u32 *frame, __be32 *buffer, unsigned int data_blocks,16unsigned int data_block_quadlets);17static void copy_message(u64 *frames, __be32 *buffer, unsigned int data_blocks,18unsigned int data_block_quadlets);1920TRACE_EVENT(data_block_sph,21TP_PROTO(struct amdtp_stream *s, unsigned int data_blocks, __be32 *buffer),22TP_ARGS(s, data_blocks, buffer),23TP_STRUCT__entry(24__field(int, src)25__field(int, dst)26__field(unsigned int, data_blocks)27__dynamic_array(u32, tstamps, data_blocks)28),29TP_fast_assign(30if (s->direction == AMDTP_IN_STREAM) {31__entry->src = fw_parent_device(s->unit)->node_id;32__entry->dst = fw_parent_device(s->unit)->card->node_id;33} else {34__entry->src = fw_parent_device(s->unit)->card->node_id;35__entry->dst = fw_parent_device(s->unit)->node_id;36}37__entry->data_blocks = data_blocks;38copy_sph(__get_dynamic_array(tstamps), buffer, data_blocks, s->data_block_quadlets);39),40TP_printk(41"%04x %04x %u %s",42__entry->src,43__entry->dst,44__entry->data_blocks,45__print_array(__get_dynamic_array(tstamps), __entry->data_blocks, 4)46)47);4849TRACE_EVENT(data_block_message,50TP_PROTO(struct amdtp_stream *s, unsigned int data_blocks, __be32 *buffer),51TP_ARGS(s, data_blocks, buffer),52TP_STRUCT__entry(53__field(int, src)54__field(int, dst)55__field(unsigned int, data_blocks)56__dynamic_array(u64, messages, data_blocks)57),58TP_fast_assign(59if (s->direction == AMDTP_IN_STREAM) {60__entry->src = fw_parent_device(s->unit)->node_id;61__entry->dst = fw_parent_device(s->unit)->card->node_id;62} else {63__entry->src = fw_parent_device(s->unit)->card->node_id;64__entry->dst = fw_parent_device(s->unit)->node_id;65}66__entry->data_blocks = data_blocks;67copy_message(__get_dynamic_array(messages), buffer, data_blocks, s->data_block_quadlets);68),69TP_printk(70"%04x %04x %u %s",71__entry->src,72__entry->dst,73__entry->data_blocks,74__print_array(__get_dynamic_array(messages), __entry->data_blocks, 8)75)76);7778#endif7980#undef TRACE_INCLUDE_PATH81#define TRACE_INCLUDE_PATH .82#undef TRACE_INCLUDE_FILE83#define TRACE_INCLUDE_FILE amdtp-motu-trace84#include <trace/define_trace.h>858687