mlx5dr_domain
mlx5dr_action_create_dest_table_num(struct mlx5dr_domain *dmn, u32 table_num)
struct mlx5dr_domain *dmn = action->range->dmn;
mlx5dr_action_create_dest_match_range(struct mlx5dr_domain *dmn,
mlx5dr_action_create_mult_dest_tbl(struct mlx5dr_domain *dmn,
mlx5dr_action_create_dest_flow_fw_table(struct mlx5dr_domain *dmn,
mlx5dr_action_create_flow_sampler(struct mlx5dr_domain *dmn, u32 sampler_id)
struct mlx5dr_domain *dmn,
dr_action_create_reformat_action(struct mlx5dr_domain *dmn,
struct mlx5dr_action *mlx5dr_action_create_push_vlan(struct mlx5dr_domain *dmn,
mlx5dr_action_create_packet_reformat(struct mlx5dr_domain *dmn,
dr_action_modify_sw_to_hw_add(struct mlx5dr_domain *dmn,
dr_action_modify_sw_to_hw_set(struct mlx5dr_domain *dmn,
dr_action_modify_sw_to_hw_copy(struct mlx5dr_domain *dmn,
dr_action_modify_sw_to_hw(struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn = action->rewrite->dmn;
struct mlx5dr_domain *dmn = action->rewrite->dmn;
struct mlx5dr_domain *dmn = action->rewrite->dmn;
struct mlx5dr_domain *dmn = action->rewrite->dmn;
struct mlx5dr_domain *dmn = action->rewrite->dmn;
static int dr_action_create_modify_action(struct mlx5dr_domain *dmn,
mlx5dr_action_create_modify_header(struct mlx5dr_domain *dmn,
mlx5dr_action_create_dest_vport(struct mlx5dr_domain *dmn,
struct mlx5dr_domain *vport_dmn;
mlx5dr_action_create_aso(struct mlx5dr_domain *dmn, u32 obj_id,
static void dr_actions_apply(struct mlx5dr_domain *dmn,
static int dr_action_handle_cs_recalc(struct mlx5dr_domain *dmn,
static void dr_action_modify_ttl_adjust(struct mlx5dr_domain *dmn,
static void dr_action_print_sequence(struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
static struct dr_arg_pool *dr_arg_pool_create(struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn;
mlx5dr_arg_mgr_create(struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn;
dr_dump_domain(struct seq_file *file, struct mlx5dr_domain *dmn)
static int dr_dump_domain_all(struct seq_file *file, struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn = file->private;
struct mlx5dr_domain *dmn = file->private;
struct mlx5dr_domain *dmn = file->private;
void mlx5dr_dbg_init_dump(struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn = file->private;
void mlx5dr_dbg_uninit_dump(struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn = rule->matcher->tbl->dmn;
struct mlx5dr_domain *dmn = rule->matcher->tbl->dmn;
void mlx5dr_dbg_init_dump(struct mlx5dr_domain *dmn);
void mlx5dr_dbg_uninit_dump(struct mlx5dr_domain *dmn);
static void dr_definer_destroy_obj(struct mlx5dr_domain *dmn,
int mlx5dr_definer_get(struct mlx5dr_domain *dmn, u16 format_id,
void mlx5dr_definer_put(struct mlx5dr_domain *dmn, u32 definer_id)
dr_definer_find_obj(struct mlx5dr_domain *dmn, u16 format_id,
dr_definer_create_obj(struct mlx5dr_domain *dmn, u16 format_id,
bool mlx5dr_domain_is_support_ptrn_arg(struct mlx5dr_domain *dmn)
static void dr_domain_uninit_mem_resources(struct mlx5dr_domain *dmn)
static int dr_domain_init_resources(struct mlx5dr_domain *dmn)
static int dr_domain_init_modify_header_resources(struct mlx5dr_domain *dmn)
static void dr_domain_uninit_resources(struct mlx5dr_domain *dmn)
static void dr_domain_fill_uplink_caps(struct mlx5dr_domain *dmn,
static int dr_domain_query_vport(struct mlx5dr_domain *dmn,
static int dr_domain_query_esw_mgr(struct mlx5dr_domain *dmn)
static void dr_domain_query_uplink(struct mlx5dr_domain *dmn)
dr_domain_add_vport_cap(struct mlx5dr_domain *dmn, u16 vport)
static bool dr_domain_is_esw_mgr_vport(struct mlx5dr_domain *dmn, u16 vport)
mlx5dr_domain_get_vport_cap(struct mlx5dr_domain *dmn, u16 vport)
static void dr_domain_clear_vports(struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn)
static void dr_domain_destroy_modify_header_resources(struct mlx5dr_domain *dmn)
static void dr_domain_caps_uninit(struct mlx5dr_domain *dmn)
struct mlx5dr_domain *
struct mlx5dr_domain *dmn;
int mlx5dr_domain_destroy(struct mlx5dr_domain *dmn)
static void dr_domain_init_csum_recalc_fts(struct mlx5dr_domain *dmn)
void mlx5dr_domain_set_peer(struct mlx5dr_domain *dmn,
struct mlx5dr_domain *peer_dmn,
struct mlx5dr_domain *peer;
static void dr_domain_uninit_csum_recalc_fts(struct mlx5dr_domain *dmn)
int mlx5dr_domain_get_recalc_cs_ft_addr(struct mlx5dr_domain *dmn,
static int dr_domain_init_mem_resources(struct mlx5dr_domain *dmn)
int mlx5dr_fw_create_md_tbl(struct mlx5dr_domain *dmn,
void mlx5dr_fw_destroy_md_tbl(struct mlx5dr_domain *dmn,
mlx5dr_fw_create_recalc_cs_ft(struct mlx5dr_domain *dmn, u16 vport_num)
void mlx5dr_fw_destroy_recalc_cs_ft(struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn;
struct mlx5dr_domain *dmn;
struct mlx5dr_icm_pool *mlx5dr_icm_pool_create(struct mlx5dr_domain *dmn,
static int dr_matcher_disconnect_nic(struct mlx5dr_domain *dmn,
int mlx5dr_matcher_remove_from_tbl_nic(struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
static int dr_nic_matcher_connect(struct mlx5dr_domain *dmn,
int mlx5dr_matcher_add_to_tbl_nic(struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn = tbl->dmn;
struct mlx5dr_domain *dmn;
struct mlx5dr_ptrn_mgr *mlx5dr_ptrn_mgr_create(struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn = rule->matcher->tbl->dmn;
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
static int dr_rule_append_to_miss_list(struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn = rule->matcher->tbl->dmn;
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
void mlx5dr_send_info_pool_destroy(struct mlx5dr_domain *dmn)
int mlx5dr_send_ring_alloc(struct mlx5dr_domain *dmn)
void mlx5dr_send_ring_free(struct mlx5dr_domain *dmn,
int mlx5dr_send_info_pool_create(struct mlx5dr_domain *dmn)
*mlx5dr_send_info_alloc(struct mlx5dr_domain *dmn,
static int dr_handle_pending_wc(struct mlx5dr_domain *dmn,
static void dr_fill_write_icm_segs(struct mlx5dr_domain *dmn,
static void dr_fill_data_segs(struct mlx5dr_domain *dmn,
static int dr_postsend_icm_data(struct mlx5dr_domain *dmn,
static int dr_get_tbl_copy_details(struct mlx5dr_domain *dmn,
int mlx5dr_send_postsend_ste(struct mlx5dr_domain *dmn, struct mlx5dr_ste *ste,
int mlx5dr_send_postsend_htbl(struct mlx5dr_domain *dmn,
int mlx5dr_send_postsend_formatted_htbl(struct mlx5dr_domain *dmn,
int mlx5dr_send_postsend_action(struct mlx5dr_domain *dmn,
int mlx5dr_send_postsend_pattern(struct mlx5dr_domain *dmn,
int mlx5dr_send_postsend_args(struct mlx5dr_domain *dmn, u64 arg_id,
static int dr_prepare_qp_to_rts(struct mlx5dr_domain *dmn)
struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
int mlx5dr_ste_htbl_init_and_postsend(struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn = action->rewrite->dmn;
struct mlx5dr_domain *dmn = action->rewrite->dmn;
struct mlx5dr_domain *dmn = action->rewrite->dmn;
static int dr_ste_build_pre_check_spec(struct mlx5dr_domain *dmn,
int mlx5dr_ste_build_pre_check(struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn = matcher->tbl->dmn;
struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn = sb->dmn;
struct mlx5dr_domain *vport_dmn;
struct mlx5dr_domain *peer;
struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn = sb->dmn;
struct mlx5dr_domain *vport_dmn;
struct mlx5dr_domain *peer;
struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn,
void dr_ste_v1_set_actions_tx(struct mlx5dr_ste_ctx *ste_ctx, struct mlx5dr_domain *dmn,
void dr_ste_v1_set_actions_rx(struct mlx5dr_ste_ctx *ste_ctx, struct mlx5dr_domain *dmn,
static int dr_table_init_nic(struct mlx5dr_domain *dmn,
struct mlx5dr_table *mlx5dr_table_create(struct mlx5dr_domain *dmn, u32 level,
static int dr_table_set_miss_action_nic(struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn;
struct mlx5dr_domain *dmn;
struct mlx5dr_domain *dmn;
struct mlx5dr_domain *dmn;
struct mlx5dr_domain *dmn;
struct mlx5dr_domain *dmn;
struct mlx5dr_domain *dmn;
static inline void mlx5dr_domain_lock(struct mlx5dr_domain *dmn)
static inline void mlx5dr_domain_unlock(struct mlx5dr_domain *dmn)
int mlx5dr_matcher_add_to_tbl_nic(struct mlx5dr_domain *dmn,
int mlx5dr_matcher_remove_from_tbl_nic(struct mlx5dr_domain *dmn,
mlx5dr_domain_get_vport_cap(struct mlx5dr_domain *dmn, u16 vport);
int mlx5dr_definer_get(struct mlx5dr_domain *dmn, u16 format_id,
void mlx5dr_definer_put(struct mlx5dr_domain *dmn, u32 definer_id);
struct mlx5dr_icm_pool *mlx5dr_icm_pool_create(struct mlx5dr_domain *dmn,
int mlx5dr_ste_htbl_init_and_postsend(struct mlx5dr_domain *dmn,
int mlx5dr_send_ring_alloc(struct mlx5dr_domain *dmn);
void mlx5dr_send_ring_free(struct mlx5dr_domain *dmn,
int mlx5dr_send_postsend_ste(struct mlx5dr_domain *dmn,
int mlx5dr_send_postsend_htbl(struct mlx5dr_domain *dmn,
int mlx5dr_send_postsend_formatted_htbl(struct mlx5dr_domain *dmn,
int mlx5dr_send_postsend_action(struct mlx5dr_domain *dmn,
int mlx5dr_send_postsend_pattern(struct mlx5dr_domain *dmn,
int mlx5dr_send_postsend_args(struct mlx5dr_domain *dmn, u64 arg_id,
int mlx5dr_send_info_pool_create(struct mlx5dr_domain *dmn);
void mlx5dr_send_info_pool_destroy(struct mlx5dr_domain *dmn);
struct mlx5dr_ste_send_info *mlx5dr_send_info_alloc(struct mlx5dr_domain *dmn,
mlx5dr_fw_create_recalc_cs_ft(struct mlx5dr_domain *dmn, u16 vport_num);
void mlx5dr_fw_destroy_recalc_cs_ft(struct mlx5dr_domain *dmn,
int mlx5dr_domain_get_recalc_cs_ft_addr(struct mlx5dr_domain *dmn,
int mlx5dr_fw_create_md_tbl(struct mlx5dr_domain *dmn,
void mlx5dr_fw_destroy_md_tbl(struct mlx5dr_domain *dmn, u32 tbl_id,
bool mlx5dr_domain_is_support_ptrn_arg(struct mlx5dr_domain *dmn);
struct mlx5dr_ptrn_mgr *mlx5dr_ptrn_mgr_create(struct mlx5dr_domain *dmn);
struct mlx5dr_arg_mgr *mlx5dr_arg_mgr_create(struct mlx5dr_domain *dmn);
struct mlx5dr_domain *dmn;
struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn,
int mlx5dr_ste_build_pre_check(struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn,
struct mlx5dr_domain *dmn;
static struct mlx5dr_action *create_vport_action(struct mlx5dr_domain *domain,
static struct mlx5dr_action *create_uplink_action(struct mlx5dr_domain *domain,
static struct mlx5dr_action *create_ft_action(struct mlx5dr_domain *domain,
static struct mlx5dr_action *create_range_action(struct mlx5dr_domain *domain,
static struct mlx5dr_action *create_action_push_vlan(struct mlx5dr_domain *domain,
struct mlx5dr_domain *domain = ns->fs_dr_domain.dr_domain;
struct mlx5dr_domain *dr_domain = ns->fs_dr_domain.dr_domain;
struct mlx5dr_domain *dr_domain = ns->fs_dr_domain.dr_domain;
struct mlx5dr_domain *peer_domain = NULL;
struct mlx5dr_domain *dr_domain;
mlx5dr_action_create_flow_sampler(struct mlx5dr_domain *dmn, u32 sampler_id);
mlx5dr_action_create_packet_reformat(struct mlx5dr_domain *dmn,
mlx5dr_action_create_modify_header(struct mlx5dr_domain *domain,
mlx5dr_action_create_push_vlan(struct mlx5dr_domain *domain, __be32 vlan_hdr);
mlx5dr_action_create_aso(struct mlx5dr_domain *dmn,
mlx5dr_action_create_dest_match_range(struct mlx5dr_domain *dmn,
struct mlx5dr_domain *
int mlx5dr_domain_destroy(struct mlx5dr_domain *domain);
void mlx5dr_domain_set_peer(struct mlx5dr_domain *dmn,
struct mlx5dr_domain *peer_dmn,
mlx5dr_table_create(struct mlx5dr_domain *domain, u32 level, u32 flags,
struct mlx5dr_domain;
mlx5dr_action_create_dest_table_num(struct mlx5dr_domain *dmn, u32 table_num);
mlx5dr_action_create_dest_flow_fw_table(struct mlx5dr_domain *domain,
mlx5dr_action_create_dest_vport(struct mlx5dr_domain *domain,
mlx5dr_action_create_mult_dest_tbl(struct mlx5dr_domain *dmn,