Branch data Line data Source code
1 : : /* SPDX-License-Identifier: GPL-2.0 */ 2 : : #undef TRACE_SYSTEM 3 : : #define TRACE_SYSTEM initcall 4 : : 5 : : #if !defined(_TRACE_INITCALL_H) || defined(TRACE_HEADER_MULTI_READ) 6 : : #define _TRACE_INITCALL_H 7 : : 8 : : #include <linux/tracepoint.h> 9 : : 10 : 3 : TRACE_EVENT(initcall_level, 11 : : 12 : : TP_PROTO(const char *level), 13 : : 14 : : TP_ARGS(level), 15 : : 16 : : TP_STRUCT__entry( 17 : : __string(level, level) 18 : : ), 19 : : 20 : : TP_fast_assign( 21 : : __assign_str(level, level); 22 : : ), 23 : : 24 : : TP_printk("level=%s", __get_str(level)) 25 : : ); 26 : : 27 : 3 : TRACE_EVENT(initcall_start, 28 : : 29 : : TP_PROTO(initcall_t func), 30 : : 31 : : TP_ARGS(func), 32 : : 33 : : TP_STRUCT__entry( 34 : : /* 35 : : * Use field_struct to avoid is_signed_type() 36 : : * comparison of a function pointer 37 : : */ 38 : : __field_struct(initcall_t, func) 39 : : ), 40 : : 41 : : TP_fast_assign( 42 : : __entry->func = func; 43 : : ), 44 : : 45 : : TP_printk("func=%pS", __entry->func) 46 : : ); 47 : : 48 : 3 : TRACE_EVENT(initcall_finish, 49 : : 50 : : TP_PROTO(initcall_t func, int ret), 51 : : 52 : : TP_ARGS(func, ret), 53 : : 54 : : TP_STRUCT__entry( 55 : : /* 56 : : * Use field_struct to avoid is_signed_type() 57 : : * comparison of a function pointer 58 : : */ 59 : : __field_struct(initcall_t, func) 60 : : __field(int, ret) 61 : : ), 62 : : 63 : : TP_fast_assign( 64 : : __entry->func = func; 65 : : __entry->ret = ret; 66 : : ), 67 : : 68 : : TP_printk("func=%pS ret=%d", __entry->func, __entry->ret) 69 : : ); 70 : : 71 : : #endif /* if !defined(_TRACE_GPIO_H) || defined(TRACE_HEADER_MULTI_READ) */ 72 : : 73 : : /* This part must be outside protection */ 74 : : #include <trace/define_trace.h>