1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #undef TRACE_SYSTEM 3 #define TRACE_SYSTEM hwmon 4 5 #if !defined(_TRACE_HWMON_H) || defined(TRACE_HEADER_MULTI_READ) 6 #define _TRACE_HWMON_H 7 8 #include <linux/tracepoint.h> 9 10 DECLARE_EVENT_CLASS(hwmon_attr_class, 11 12 TP_PROTO(int index, const char *attr_name, long val), 13 14 TP_ARGS(index, attr_name, val), 15 16 TP_STRUCT__entry( 17 __field(int, index) 18 __string(attr_name, attr_name) 19 __field(long, val) 20 ), 21 22 TP_fast_assign( 23 __entry->index = index; 24 __assign_str(attr_name, attr_name); 25 __entry->val = val; 26 ), 27 28 TP_printk("index=%d, attr_name=%s, val=%ld", 29 __entry->index, __get_str(attr_name), __entry->val) 30 ); 31 32 DEFINE_EVENT(hwmon_attr_class, hwmon_attr_show, 33 34 TP_PROTO(int index, const char *attr_name, long val), 35 36 TP_ARGS(index, attr_name, val) 37 ); 38 39 DEFINE_EVENT(hwmon_attr_class, hwmon_attr_store, 40 41 TP_PROTO(int index, const char *attr_name, long val), 42 43 TP_ARGS(index, attr_name, val) 44 ); 45 46 TRACE_EVENT(hwmon_attr_show_string, 47 48 TP_PROTO(int index, const char *attr_name, const char *s), 49 50 TP_ARGS(index, attr_name, s), 51 52 TP_STRUCT__entry( 53 __field(int, index) 54 __string(attr_name, attr_name) 55 __string(label, s) 56 ), 57 58 TP_fast_assign( 59 __entry->index = index; 60 __assign_str(attr_name, attr_name); 61 __assign_str(label, s); 62 ), 63 64 TP_printk("index=%d, attr_name=%s, val=%s", 65 __entry->index, __get_str(attr_name), __get_str(label)) 66 ); 67 68 #endif /* _TRACE_HWMON_H */ 69 70 /* This part must be outside protection */ 71 #include <trace/define_trace.h> 72