1a97cfe4dSJiri Pirko /* SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0 */ 2a97cfe4dSJiri Pirko /* Copyright (c) 2019 Mellanox Technologies. All rights reserved */ 3a97cfe4dSJiri Pirko 4a97cfe4dSJiri Pirko #undef TRACE_SYSTEM 5a97cfe4dSJiri Pirko #define TRACE_SYSTEM mlxsw 6a97cfe4dSJiri Pirko 7a97cfe4dSJiri Pirko #if !defined(_MLXSW_TRACEPOINT_H) || defined(TRACE_HEADER_MULTI_READ) 8a97cfe4dSJiri Pirko #define _MLXSW_TRACEPOINT_H 9a97cfe4dSJiri Pirko 10a97cfe4dSJiri Pirko #include <linux/tracepoint.h> 11a97cfe4dSJiri Pirko 12a97cfe4dSJiri Pirko struct mlxsw_sp; 13a97cfe4dSJiri Pirko struct mlxsw_sp_acl_atcam_region; 14*3985de72SJiri Pirko struct mlxsw_sp_acl_tcam_vregion; 15a97cfe4dSJiri Pirko 16a97cfe4dSJiri Pirko TRACE_EVENT(mlxsw_sp_acl_atcam_entry_add_ctcam_spill, 17a97cfe4dSJiri Pirko TP_PROTO(const struct mlxsw_sp *mlxsw_sp, 18a97cfe4dSJiri Pirko const struct mlxsw_sp_acl_atcam_region *aregion), 19a97cfe4dSJiri Pirko 20a97cfe4dSJiri Pirko TP_ARGS(mlxsw_sp, aregion), 21a97cfe4dSJiri Pirko 22a97cfe4dSJiri Pirko TP_STRUCT__entry( 23a97cfe4dSJiri Pirko __field(const void *, mlxsw_sp) 24a97cfe4dSJiri Pirko __field(const void *, aregion) 25a97cfe4dSJiri Pirko ), 26a97cfe4dSJiri Pirko 27a97cfe4dSJiri Pirko TP_fast_assign( 28a97cfe4dSJiri Pirko __entry->mlxsw_sp = mlxsw_sp; 29a97cfe4dSJiri Pirko __entry->aregion = aregion; 30a97cfe4dSJiri Pirko ), 31a97cfe4dSJiri Pirko 32a97cfe4dSJiri Pirko TP_printk("mlxsw_sp %p, aregion %p", 33a97cfe4dSJiri Pirko __entry->mlxsw_sp, __entry->aregion) 34a97cfe4dSJiri Pirko ); 35a97cfe4dSJiri Pirko 36*3985de72SJiri Pirko TRACE_EVENT(mlxsw_sp_acl_tcam_vregion_rehash, 37*3985de72SJiri Pirko TP_PROTO(const struct mlxsw_sp *mlxsw_sp, 38*3985de72SJiri Pirko const struct mlxsw_sp_acl_tcam_vregion *vregion), 39*3985de72SJiri Pirko 40*3985de72SJiri Pirko TP_ARGS(mlxsw_sp, vregion), 41*3985de72SJiri Pirko 42*3985de72SJiri Pirko TP_STRUCT__entry( 43*3985de72SJiri Pirko __field(const void *, mlxsw_sp) 44*3985de72SJiri Pirko __field(const void *, vregion) 45*3985de72SJiri Pirko ), 46*3985de72SJiri Pirko 47*3985de72SJiri Pirko TP_fast_assign( 48*3985de72SJiri Pirko __entry->mlxsw_sp = mlxsw_sp; 49*3985de72SJiri Pirko __entry->vregion = vregion; 50*3985de72SJiri Pirko ), 51*3985de72SJiri Pirko 52*3985de72SJiri Pirko TP_printk("mlxsw_sp %p, vregion %p", 53*3985de72SJiri Pirko __entry->mlxsw_sp, __entry->vregion) 54*3985de72SJiri Pirko ); 55*3985de72SJiri Pirko 56*3985de72SJiri Pirko TRACE_EVENT(mlxsw_sp_acl_tcam_vregion_migrate, 57*3985de72SJiri Pirko TP_PROTO(const struct mlxsw_sp *mlxsw_sp, 58*3985de72SJiri Pirko const struct mlxsw_sp_acl_tcam_vregion *vregion), 59*3985de72SJiri Pirko 60*3985de72SJiri Pirko TP_ARGS(mlxsw_sp, vregion), 61*3985de72SJiri Pirko 62*3985de72SJiri Pirko TP_STRUCT__entry( 63*3985de72SJiri Pirko __field(const void *, mlxsw_sp) 64*3985de72SJiri Pirko __field(const void *, vregion) 65*3985de72SJiri Pirko ), 66*3985de72SJiri Pirko 67*3985de72SJiri Pirko TP_fast_assign( 68*3985de72SJiri Pirko __entry->mlxsw_sp = mlxsw_sp; 69*3985de72SJiri Pirko __entry->vregion = vregion; 70*3985de72SJiri Pirko ), 71*3985de72SJiri Pirko 72*3985de72SJiri Pirko TP_printk("mlxsw_sp %p, vregion %p", 73*3985de72SJiri Pirko __entry->mlxsw_sp, __entry->vregion) 74*3985de72SJiri Pirko ); 75*3985de72SJiri Pirko 76*3985de72SJiri Pirko TRACE_EVENT(mlxsw_sp_acl_tcam_vregion_rehash_dis, 77*3985de72SJiri Pirko TP_PROTO(const struct mlxsw_sp *mlxsw_sp, 78*3985de72SJiri Pirko const struct mlxsw_sp_acl_tcam_vregion *vregion), 79*3985de72SJiri Pirko 80*3985de72SJiri Pirko TP_ARGS(mlxsw_sp, vregion), 81*3985de72SJiri Pirko 82*3985de72SJiri Pirko TP_STRUCT__entry( 83*3985de72SJiri Pirko __field(const void *, mlxsw_sp) 84*3985de72SJiri Pirko __field(const void *, vregion) 85*3985de72SJiri Pirko ), 86*3985de72SJiri Pirko 87*3985de72SJiri Pirko TP_fast_assign( 88*3985de72SJiri Pirko __entry->mlxsw_sp = mlxsw_sp; 89*3985de72SJiri Pirko __entry->vregion = vregion; 90*3985de72SJiri Pirko ), 91*3985de72SJiri Pirko 92*3985de72SJiri Pirko TP_printk("mlxsw_sp %p, vregion %p", 93*3985de72SJiri Pirko __entry->mlxsw_sp, __entry->vregion) 94*3985de72SJiri Pirko ); 95*3985de72SJiri Pirko 96a97cfe4dSJiri Pirko #endif /* _MLXSW_TRACEPOINT_H */ 97a97cfe4dSJiri Pirko 98a97cfe4dSJiri Pirko /* This part must be outside protection */ 99a97cfe4dSJiri Pirko #include <trace/define_trace.h> 100