11c80bd68SAya Levin /* SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB */ 21c80bd68SAya Levin /* Copyright (c) 2021 Mellanox Technologies. */ 31c80bd68SAya Levin 41c80bd68SAya Levin #ifndef __MLX5E_FS_TT_REDIRECT_H__ 51c80bd68SAya Levin #define __MLX5E_FS_TT_REDIRECT_H__ 61c80bd68SAya Levin 71c80bd68SAya Levin #include "en/fs.h" 81c80bd68SAya Levin 91c80bd68SAya Levin void mlx5e_fs_tt_redirect_del_rule(struct mlx5_flow_handle *rule); 101c80bd68SAya Levin 111c80bd68SAya Levin /* UDP traffic type redirect */ 121c80bd68SAya Levin struct mlx5_flow_handle * 13*4e0ecc17SLama Kayal mlx5e_fs_tt_redirect_udp_add_rule(struct mlx5e_flow_steering *fs, 14d443c6f6SMaor Gottlieb enum mlx5_traffic_types ttc_type, 151c80bd68SAya Levin u32 tir_num, u16 d_port); 16*4e0ecc17SLama Kayal void mlx5e_fs_tt_redirect_udp_destroy(struct mlx5e_flow_steering *fs); 17*4e0ecc17SLama Kayal int mlx5e_fs_tt_redirect_udp_create(struct mlx5e_flow_steering *fs); 180f575c20SAya Levin 190f575c20SAya Levin /* ANY traffic type redirect*/ 200f575c20SAya Levin struct mlx5_flow_handle * 21*4e0ecc17SLama Kayal mlx5e_fs_tt_redirect_any_add_rule(struct mlx5e_flow_steering *fs, 220f575c20SAya Levin u32 tir_num, u16 ether_type); 23*4e0ecc17SLama Kayal void mlx5e_fs_tt_redirect_any_destroy(struct mlx5e_flow_steering *fs); 24*4e0ecc17SLama Kayal int mlx5e_fs_tt_redirect_any_create(struct mlx5e_flow_steering *fs); 251c80bd68SAya Levin #endif 26