mlxsw: core: Expose generic macros for rx trap
In Spectrum, there is a macro to arrange the traps list. This macro is useful for everyone who is using rx traps. Create a similar macro in core.h for creating the generic listener struct for rx traps. Signed-off-by: Nogah Frankel <nogahf@mellanox.com> Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
0791051c43
commit
b63da93de8
@ -101,6 +101,20 @@ struct mlxsw_listener {
|
||||
bool is_event;
|
||||
};
|
||||
|
||||
#define MLXSW_RXL(_func, _trap_id, _action, _unreg_action) \
|
||||
{ \
|
||||
.trap_id = MLXSW_TRAP_ID_##_trap_id, \
|
||||
.u.rx_listener = \
|
||||
{ \
|
||||
.func = _func, \
|
||||
.local_port = MLXSW_PORT_DONT_CARE, \
|
||||
.trap_id = MLXSW_TRAP_ID_##_trap_id, \
|
||||
}, \
|
||||
.action = MLXSW_REG_HPKT_ACTION_##_action, \
|
||||
.unreg_action = MLXSW_REG_HPKT_ACTION_##_unreg_action, \
|
||||
.is_event = false, \
|
||||
}
|
||||
|
||||
int mlxsw_core_rx_listener_register(struct mlxsw_core *mlxsw_core,
|
||||
const struct mlxsw_rx_listener *rxl,
|
||||
void *priv);
|
||||
|
Reference in New Issue
Block a user