brintos

brintos / linux-shallow public Read only

0
0
Text · 5.6 KiB · 5ff1512 Raw
246 lines · c
1/* SPDX-License-Identifier: GPL-2.0 */2 3#undef TRACE_SYSTEM4#define TRACE_SYSTEM fsi5 6#if !defined(_TRACE_FSI_H) || defined(TRACE_HEADER_MULTI_READ)7#define _TRACE_FSI_H8 9#include <linux/tracepoint.h>10 11TRACE_EVENT(fsi_master_read,12	TP_PROTO(const struct fsi_master *master, int link, int id,13			uint32_t addr, size_t size),14	TP_ARGS(master, link, id, addr, size),15	TP_STRUCT__entry(16		__field(int,	master_idx)17		__field(int,	link)18		__field(int,	id)19		__field(__u32,	addr)20		__field(size_t,	size)21	),22	TP_fast_assign(23		__entry->master_idx = master->idx;24		__entry->link = link;25		__entry->id = id;26		__entry->addr = addr;27		__entry->size = size;28	),29	TP_printk("fsi%d:%02d:%02d %08x[%zu]",30		__entry->master_idx,31		__entry->link,32		__entry->id,33		__entry->addr,34		__entry->size35	)36);37 38TRACE_EVENT(fsi_master_write,39	TP_PROTO(const struct fsi_master *master, int link, int id,40			uint32_t addr, size_t size, const void *data),41	TP_ARGS(master, link, id, addr, size, data),42	TP_STRUCT__entry(43		__field(int,	master_idx)44		__field(int,	link)45		__field(int,	id)46		__field(__u32,	addr)47		__field(size_t,	size)48		__field(__u32,	data)49	),50	TP_fast_assign(51		__entry->master_idx = master->idx;52		__entry->link = link;53		__entry->id = id;54		__entry->addr = addr;55		__entry->size = size;56		__entry->data = 0;57		memcpy(&__entry->data, data, size);58	),59	TP_printk("fsi%d:%02d:%02d %08x[%zu] <= {%*ph}",60		__entry->master_idx,61		__entry->link,62		__entry->id,63		__entry->addr,64		__entry->size,65		(int)__entry->size, &__entry->data66	)67);68 69TRACE_EVENT(fsi_master_rw_result,70	TP_PROTO(const struct fsi_master *master, int link, int id,71			uint32_t addr, size_t size,72			bool write, const void *data, int ret),73	TP_ARGS(master, link, id, addr, size, write, data, ret),74	TP_STRUCT__entry(75		__field(int,	master_idx)76		__field(int,	link)77		__field(int,	id)78		__field(__u32,	addr)79		__field(size_t,	size)80		__field(bool,	write)81		__field(__u32,	data)82		__field(int,	ret)83	),84	TP_fast_assign(85		__entry->master_idx = master->idx;86		__entry->link = link;87		__entry->id = id;88		__entry->addr = addr;89		__entry->size = size;90		__entry->write = write;91		__entry->data = 0;92		__entry->ret = ret;93		if (__entry->write || !__entry->ret)94			memcpy(&__entry->data, data, size);95	),96	TP_printk("fsi%d:%02d:%02d %08x[%zu] %s {%*ph} ret %d",97		__entry->master_idx,98		__entry->link,99		__entry->id,100		__entry->addr,101		__entry->size,102		__entry->write ? "<=" : "=>",103		(int)__entry->size, &__entry->data,104		__entry->ret105	)106);107 108TRACE_EVENT(fsi_master_break,109	TP_PROTO(const struct fsi_master *master, int link),110	TP_ARGS(master, link),111	TP_STRUCT__entry(112		__field(int,	master_idx)113		__field(int,	link)114	),115	TP_fast_assign(116		__entry->master_idx = master->idx;117		__entry->link = link;118	),119	TP_printk("fsi%d:%d",120		__entry->master_idx,121		__entry->link122	)123);124 125TRACE_EVENT(fsi_master_scan,126	TP_PROTO(const struct fsi_master *master, bool scan),127	TP_ARGS(master, scan),128	TP_STRUCT__entry(129		__field(int,	master_idx)130		__field(int,	n_links)131		__field(bool,	scan)132	),133	TP_fast_assign(134		__entry->master_idx = master->idx;135		__entry->n_links = master->n_links;136		__entry->scan = scan;137	),138	TP_printk("fsi%d (%d links) %s", __entry->master_idx, __entry->n_links,139		  __entry->scan ? "scan" : "unscan")140);141 142TRACE_EVENT(fsi_master_unregister,143	TP_PROTO(const struct fsi_master *master),144	TP_ARGS(master),145	TP_STRUCT__entry(146		__field(int,	master_idx)147		__field(int,	n_links)148	),149	TP_fast_assign(150		__entry->master_idx = master->idx;151		__entry->n_links = master->n_links;152	),153	TP_printk("fsi%d (%d links)", __entry->master_idx, __entry->n_links)154);155 156TRACE_EVENT(fsi_slave_init,157	TP_PROTO(const struct fsi_slave *slave),158	TP_ARGS(slave),159	TP_STRUCT__entry(160		__field(int,	master_idx)161		__field(int,	master_n_links)162		__field(int,	idx)163		__field(int,	link)164		__field(int,	chip_id)165		__field(__u32,	cfam_id)166		__field(__u32,	size)167	),168	TP_fast_assign(169		__entry->master_idx = slave->master->idx;170		__entry->master_n_links = slave->master->n_links;171		__entry->idx = slave->cdev_idx;172		__entry->link = slave->link;173		__entry->chip_id = slave->chip_id;174		__entry->cfam_id = slave->cfam_id;175		__entry->size = slave->size;176	),177	TP_printk("fsi%d: idx:%d link:%d/%d cid:%d cfam:%08x %08x",178		__entry->master_idx,179		__entry->idx,180		__entry->link,181		__entry->master_n_links,182		__entry->chip_id,183		__entry->cfam_id,184		__entry->size185	)186);187 188TRACE_EVENT(fsi_slave_invalid_cfam,189	TP_PROTO(const struct fsi_master *master, int link, uint32_t cfam_id),190	TP_ARGS(master, link, cfam_id),191	TP_STRUCT__entry(192		__field(int,	master_idx)193		__field(int,	master_n_links)194		__field(int,	link)195		__field(__u32,	cfam_id)196	),197	TP_fast_assign(198		__entry->master_idx = master->idx;199		__entry->master_n_links = master->n_links;200		__entry->link = link;201		__entry->cfam_id = cfam_id;202	),203	TP_printk("fsi%d: cfam:%08x link:%d/%d",204		__entry->master_idx,205		__entry->cfam_id,206		__entry->link,207		__entry->master_n_links208	)209);210 211TRACE_EVENT(fsi_dev_init,212	TP_PROTO(const struct fsi_device *dev),213	TP_ARGS(dev),214	TP_STRUCT__entry(215		__field(int,	master_idx)216		__field(int,	link)217		__field(int,	type)218		__field(int,	unit)219		__field(int,	version)220		__field(__u32,	addr)221		__field(__u32,	size)222	),223	TP_fast_assign(224		__entry->master_idx = dev->slave->master->idx;225		__entry->link = dev->slave->link;226		__entry->type = dev->engine_type;227		__entry->unit = dev->unit;228		__entry->version = dev->version;229		__entry->addr = dev->addr;230		__entry->size = dev->size;231	),232	TP_printk("fsi%d: slv%d: t:%02x u:%02x v:%02x %08x@%08x",233		__entry->master_idx,234		__entry->link,235		__entry->type,236		__entry->unit,237		__entry->version,238		__entry->size,239		__entry->addr240	)241);242 243#endif /* _TRACE_FSI_H */244 245#include <trace/define_trace.h>246