^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) /* SPDX-License-Identifier: GPL-2.0 */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) #undef TRACE_SYSTEM
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) #define TRACE_SYSTEM mdio
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5) #if !defined(_TRACE_MDIO_H) || defined(TRACE_HEADER_MULTI_READ)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) #define _TRACE_MDIO_H
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) #include <linux/tracepoint.h>
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10) TRACE_EVENT_CONDITION(mdio_access,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) TP_PROTO(struct mii_bus *bus, char read,
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13) u8 addr, unsigned regnum, u16 val, int err),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) TP_ARGS(bus, read, addr, regnum, val, err),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) TP_CONDITION(err >= 0),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) TP_STRUCT__entry(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20) __array(char, busid, MII_BUS_ID_SIZE)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) __field(char, read)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) __field(u8, addr)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) __field(u16, val)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) __field(unsigned, regnum)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) TP_fast_assign(
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) strncpy(__entry->busid, bus->id, MII_BUS_ID_SIZE);
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29) __entry->read = read;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) __entry->addr = addr;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) __entry->regnum = regnum;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) __entry->val = val;
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) ),
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) TP_printk("%s %-5s phy:0x%02hhx reg:0x%02x val:0x%04hx",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) __entry->busid, __entry->read ? "read" : "write",
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) __entry->addr, __entry->regnum, __entry->val)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 38) );
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 39)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 40) #endif /* if !defined(_TRACE_MDIO_H) || defined(TRACE_HEADER_MULTI_READ) */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 41)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 42) /* This part must be outside protection */
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 43) #include <trace/define_trace.h>