Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 */
0002 #undef TRACE_SYSTEM
0003 #define TRACE_SYSTEM mdio
0004 
0005 #if !defined(_TRACE_MDIO_H) || defined(TRACE_HEADER_MULTI_READ)
0006 #define _TRACE_MDIO_H
0007 
0008 #include <linux/tracepoint.h>
0009 
0010 TRACE_EVENT_CONDITION(mdio_access,
0011 
0012     TP_PROTO(struct mii_bus *bus, char read,
0013          u8 addr, unsigned regnum, u16 val, int err),
0014 
0015     TP_ARGS(bus, read, addr, regnum, val, err),
0016 
0017     TP_CONDITION(err >= 0),
0018 
0019     TP_STRUCT__entry(
0020         __array(char, busid, MII_BUS_ID_SIZE)
0021         __field(char, read)
0022         __field(u8, addr)
0023         __field(u16, val)
0024         __field(unsigned, regnum)
0025     ),
0026 
0027     TP_fast_assign(
0028         strncpy(__entry->busid, bus->id, MII_BUS_ID_SIZE);
0029         __entry->read = read;
0030         __entry->addr = addr;
0031         __entry->regnum = regnum;
0032         __entry->val = val;
0033     ),
0034 
0035     TP_printk("%s %-5s phy:0x%02hhx reg:0x%02x val:0x%04hx",
0036           __entry->busid, __entry->read ? "read" : "write",
0037           __entry->addr, __entry->regnum, __entry->val)
0038 );
0039 
0040 #endif /* if !defined(_TRACE_MDIO_H) || defined(TRACE_HEADER_MULTI_READ) */
0041 
0042 /* This part must be outside protection */
0043 #include <trace/define_trace.h>