/linux-6.12.1/drivers/net/ethernet/mellanox/mlx5/core/steering/hws/ |
D | mlx5hws_table.c | 12 struct mlx5hws_cmd_ft_create_attr *ft_attr) in hws_table_init_next_ft_attr() argument 14 ft_attr->type = tbl->fw_ft_type; in hws_table_init_next_ft_attr() 16 ft_attr->level = tbl->ctx->caps->fdb_ft.max_level - 1; in hws_table_init_next_ft_attr() 18 ft_attr->level = tbl->ctx->caps->nic_ft.max_level - 1; in hws_table_init_next_ft_attr() 19 ft_attr->rtc_valid = true; in hws_table_init_next_ft_attr() 23 struct mlx5hws_cmd_ft_create_attr *ft_attr) in hws_table_set_cap_attr() argument 34 ft_attr->reformat_en = true; in hws_table_set_cap_attr() 35 ft_attr->decap_en = true; in hws_table_set_cap_attr() 41 struct mlx5hws_cmd_ft_create_attr ft_attr = {0}; in hws_table_up_default_fdb_miss_tbl() local 56 ft_attr.type = tbl->fw_ft_type; in hws_table_up_default_fdb_miss_tbl() [all …]
|
D | mlx5hws_cmd.c | 48 struct mlx5hws_cmd_ft_create_attr *ft_attr, in mlx5hws_cmd_flow_table_create() argument 57 MLX5_SET(create_flow_table_in, in, table_type, ft_attr->type); in mlx5hws_cmd_flow_table_create() 60 MLX5_SET(flow_table_context, ft_ctx, level, ft_attr->level); in mlx5hws_cmd_flow_table_create() 61 MLX5_SET(flow_table_context, ft_ctx, rtc_valid, ft_attr->rtc_valid); in mlx5hws_cmd_flow_table_create() 62 MLX5_SET(flow_table_context, ft_ctx, reformat_en, ft_attr->reformat_en); in mlx5hws_cmd_flow_table_create() 63 MLX5_SET(flow_table_context, ft_ctx, decap_en, ft_attr->decap_en); in mlx5hws_cmd_flow_table_create() 75 struct mlx5hws_cmd_ft_modify_attr *ft_attr, in mlx5hws_cmd_flow_table_modify() argument 82 MLX5_SET(modify_flow_table_in, in, table_type, ft_attr->type); in mlx5hws_cmd_flow_table_modify() 83 MLX5_SET(modify_flow_table_in, in, modify_field_select, ft_attr->modify_fs); in mlx5hws_cmd_flow_table_modify() 88 MLX5_SET(flow_table_context, ft_ctx, table_miss_action, ft_attr->table_miss_action); in mlx5hws_cmd_flow_table_modify() [all …]
|
D | mlx5hws_cmd.h | 246 struct mlx5hws_cmd_ft_create_attr *ft_attr, 250 struct mlx5hws_cmd_ft_modify_attr *ft_attr, 255 struct mlx5hws_cmd_ft_query_attr *ft_attr, 331 struct mlx5hws_cmd_ft_create_attr *ft_attr, 353 struct mlx5hws_cmd_ft_modify_attr *ft_attr);
|
D | mlx5hws_debug.c | 120 struct mlx5hws_cmd_ft_query_attr ft_attr = {0}; in hws_debug_dump_matcher() local 164 ft_attr.type = matcher->tbl->fw_ft_type; in hws_debug_dump_matcher() 167 &ft_attr, in hws_debug_dump_matcher() 199 struct mlx5hws_cmd_ft_query_attr ft_attr = {0}; in hws_debug_dump_table() local 217 ft_attr.type = tbl->fw_ft_type; in hws_debug_dump_table() 220 &ft_attr, in hws_debug_dump_table()
|
/linux-6.12.1/drivers/net/ethernet/mellanox/mlx5/core/lib/ |
D | ipsec_fs_roce.c | 283 struct mlx5_flow_table_attr ft_attr = {}; in ipsec_fs_roce_tx_mpv_create_ft() local 302 ft_attr.max_fte = 1; in ipsec_fs_roce_tx_mpv_create_ft() 303 ft_attr.next_ft = &next_ft; in ipsec_fs_roce_tx_mpv_create_ft() 304 ft_attr.level = MLX5_IPSEC_NIC_GOTO_ALIAS_FT_LEVEL; in ipsec_fs_roce_tx_mpv_create_ft() 305 ft_attr.flags = MLX5_FLOW_TABLE_UNMANAGED; in ipsec_fs_roce_tx_mpv_create_ft() 306 ft = mlx5_create_flow_table(nic_ns, &ft_attr); in ipsec_fs_roce_tx_mpv_create_ft() 315 memset(&ft_attr, 0, sizeof(ft_attr)); in ipsec_fs_roce_tx_mpv_create_ft() 316 ft_attr.max_fte = 1; in ipsec_fs_roce_tx_mpv_create_ft() 317 ft_attr.level = MLX5_IPSEC_RDMA_TX_FT_LEVEL; in ipsec_fs_roce_tx_mpv_create_ft() 318 ft = mlx5_create_flow_table(roce_ns, &ft_attr); in ipsec_fs_roce_tx_mpv_create_ft() [all …]
|
D | fs_chains.c | 155 struct mlx5_flow_table_attr ft_attr = {}; in mlx5_chains_create_table() local 161 ft_attr.flags |= (MLX5_FLOW_TABLE_TUNNEL_EN_REFORMAT | in mlx5_chains_create_table() 165 ft_attr.max_fte = sz; in mlx5_chains_create_table() 171 ft_attr.next_ft = chains_default_ft(chains); in mlx5_chains_create_table() 180 ft_attr.level = chains->fs_base_level; in mlx5_chains_create_table() 181 ft_attr.prio = chains->fs_base_prio + prio - 1; in mlx5_chains_create_table() 186 ft_attr.flags |= MLX5_FLOW_TABLE_UNMANAGED; in mlx5_chains_create_table() 187 ft_attr.prio = chains->fs_base_prio; in mlx5_chains_create_table() 195 ft_attr.level = chains->fs_base_level + 1; in mlx5_chains_create_table() 199 ft_attr.autogroup.num_reserved_entries = 2; in mlx5_chains_create_table() [all …]
|
D | macsec_fs.c | 340 struct mlx5_flow_table_attr ft_attr = {}; in macsec_fs_auto_group_table_create() local 344 ft_attr.autogroup.num_reserved_entries = 1; in macsec_fs_auto_group_table_create() 345 ft_attr.autogroup.max_num_groups = 1; in macsec_fs_auto_group_table_create() 346 ft_attr.prio = 0; in macsec_fs_auto_group_table_create() 347 ft_attr.flags = flags; in macsec_fs_auto_group_table_create() 348 ft_attr.level = level; in macsec_fs_auto_group_table_create() 349 ft_attr.max_fte = max_fte; in macsec_fs_auto_group_table_create() 351 fdb = mlx5_create_auto_grouped_flow_table(ns, &ft_attr); in macsec_fs_auto_group_table_create() 394 struct mlx5_flow_table_attr ft_attr = {}; in macsec_fs_tx_create() local 425 ft_attr.flags = MLX5_FLOW_TABLE_TUNNEL_EN_REFORMAT; in macsec_fs_tx_create() [all …]
|
D | fs_ttc.c | 642 WARN_ON_ONCE(params->ft_attr.max_fte); in mlx5_create_inner_ttc_table() 643 params->ft_attr.max_fte = mlx5_fs_ttc_table_size(groups); in mlx5_create_inner_ttc_table() 644 ttc->t = mlx5_create_flow_table(ns, ¶ms->ft_attr); in mlx5_create_inner_ttc_table() 715 WARN_ON_ONCE(params->ft_attr.max_fte); in mlx5_create_ttc_table() 716 params->ft_attr.max_fte = mlx5_fs_ttc_table_size(groups); in mlx5_create_ttc_table() 717 ttc->t = mlx5_create_flow_table(ns, ¶ms->ft_attr); in mlx5_create_ttc_table()
|
D | fs_ttc.h | 44 struct mlx5_flow_table_attr ft_attr; member
|
/linux-6.12.1/drivers/net/ethernet/mellanox/mlx5/core/steering/ |
D | dr_fw.c | 10 struct mlx5dr_cmd_create_flow_table_attr ft_attr = {}; in mlx5dr_fw_create_recalc_cs_ft() local 20 ft_attr.table_type = MLX5_FLOW_TABLE_TYPE_FDB; in mlx5dr_fw_create_recalc_cs_ft() 21 ft_attr.level = dmn->info.caps.max_ft_level - 1; in mlx5dr_fw_create_recalc_cs_ft() 22 ft_attr.term_tbl = true; in mlx5dr_fw_create_recalc_cs_ft() 25 &ft_attr, in mlx5dr_fw_create_recalc_cs_ft() 110 struct mlx5dr_cmd_create_flow_table_attr ft_attr = {}; in mlx5dr_fw_create_md_tbl() local 116 ft_attr.table_type = MLX5_FLOW_TABLE_TYPE_FDB; in mlx5dr_fw_create_md_tbl() 117 ft_attr.level = min_t(int, dmn->info.caps.max_ft_level - 2, in mlx5dr_fw_create_md_tbl() 119 ft_attr.reformat_en = reformat_req; in mlx5dr_fw_create_md_tbl() 120 ft_attr.decap_en = reformat_req; in mlx5dr_fw_create_md_tbl() [all …]
|
D | dr_table.c | 224 struct mlx5dr_cmd_create_flow_table_attr ft_attr = {}; in dr_table_create_sw_owned_tbl() local 235 ft_attr.table_type = tbl->table_type; in dr_table_create_sw_owned_tbl() 236 ft_attr.icm_addr_rx = icm_addr_rx; in dr_table_create_sw_owned_tbl() 237 ft_attr.icm_addr_tx = icm_addr_tx; in dr_table_create_sw_owned_tbl() 238 ft_attr.level = tbl->dmn->info.caps.max_ft_level - 1; in dr_table_create_sw_owned_tbl() 239 ft_attr.sw_owner = true; in dr_table_create_sw_owned_tbl() 240 ft_attr.decap_en = en_decap; in dr_table_create_sw_owned_tbl() 241 ft_attr.reformat_en = en_encap; in dr_table_create_sw_owned_tbl() 242 ft_attr.uid = uid; in dr_table_create_sw_owned_tbl() 244 ret = mlx5dr_cmd_create_flow_table(tbl->dmn->mdev, &ft_attr, in dr_table_create_sw_owned_tbl()
|
/linux-6.12.1/drivers/net/ethernet/mellanox/mlx5/core/esw/ |
D | vporttbl.c | 36 struct mlx5_flow_table_attr ft_attr = {}; in esw_vport_tbl_create() local 40 ft_attr.autogroup.max_num_groups = vport_ns->max_num_groups; in esw_vport_tbl_create() 42 ft_attr.autogroup.max_num_groups = esw->params.large_group_num; in esw_vport_tbl_create() 43 ft_attr.max_fte = vport_ns->max_fte; in esw_vport_tbl_create() 44 ft_attr.prio = FDB_PER_VPORT; in esw_vport_tbl_create() 45 ft_attr.flags = vport_ns->flags; in esw_vport_tbl_create() 46 fdb = mlx5_create_auto_grouped_flow_table(ns, &ft_attr); in esw_vport_tbl_create()
|
D | legacy.c | 24 struct mlx5_flow_table_attr ft_attr = {}; in esw_create_legacy_vepa_table() local 37 ft_attr.prio = LEGACY_VEPA_PRIO; in esw_create_legacy_vepa_table() 38 ft_attr.max_fte = 2; in esw_create_legacy_vepa_table() 39 ft_attr.autogroup.max_num_groups = 2; in esw_create_legacy_vepa_table() 40 fdb = mlx5_create_auto_grouped_flow_table(root_ns, &ft_attr); in esw_create_legacy_vepa_table() 75 struct mlx5_flow_table_attr ft_attr = {}; in esw_create_legacy_fdb_table() local 99 ft_attr.max_fte = POOL_NEXT_SIZE; in esw_create_legacy_fdb_table() 100 ft_attr.prio = LEGACY_FDB_PRIO; in esw_create_legacy_fdb_table() 101 fdb = mlx5_create_flow_table(root_ns, &ft_attr); in esw_create_legacy_fdb_table()
|
D | indir_table.c | 251 struct mlx5_flow_table_attr ft_attr = {}; in mlx5_esw_indir_table_entry_create() local 265 ft_attr.prio = FDB_TC_OFFLOAD; in mlx5_esw_indir_table_entry_create() 266 ft_attr.max_fte = MLX5_ESW_INDIR_TABLE_SIZE; in mlx5_esw_indir_table_entry_create() 267 ft_attr.flags = MLX5_FLOW_TABLE_UNMANAGED; in mlx5_esw_indir_table_entry_create() 268 ft_attr.level = 1; in mlx5_esw_indir_table_entry_create() 270 ft = mlx5_create_flow_table(root_ns, &ft_attr); in mlx5_esw_indir_table_entry_create()
|
/linux-6.12.1/drivers/net/ethernet/mellanox/mlx5/core/lag/ |
D | port_sel.c | 43 struct mlx5_flow_table_attr ft_attr = {}; in mlx5_lag_create_port_sel_table() local 51 ft_attr.max_fte = ldev->ports * ldev->buckets; in mlx5_lag_create_port_sel_table() 52 ft_attr.level = MLX5_LAG_FT_LEVEL_DEFINER; in mlx5_lag_create_port_sel_table() 60 lag_definer->ft = mlx5_create_flow_table(ns, &ft_attr); in mlx5_lag_create_port_sel_table() 68 ft_attr.max_fte); in mlx5_lag_create_port_sel_table() 457 struct mlx5_flow_table_attr *ft_attr; in mlx5_lag_set_inner_ttc_params() local 461 ft_attr = &ttc_params->ft_attr; in mlx5_lag_set_inner_ttc_params() 462 ft_attr->level = MLX5_LAG_FT_LEVEL_INNER_TTC; in mlx5_lag_set_inner_ttc_params() 476 struct mlx5_flow_table_attr *ft_attr; in mlx5_lag_set_outer_ttc_params() local 480 ft_attr = &ttc_params->ft_attr; in mlx5_lag_set_outer_ttc_params() [all …]
|
/linux-6.12.1/drivers/net/ethernet/mellanox/mlx5/core/ |
D | en_fs.c | 773 struct mlx5_flow_table_attr ft_attr = {}; in mlx5e_create_promisc_table() local 776 ft_attr.max_fte = MLX5E_PROMISC_TABLE_SIZE; in mlx5e_create_promisc_table() 777 ft_attr.autogroup.max_num_groups = 1; in mlx5e_create_promisc_table() 778 ft_attr.level = MLX5E_PROMISC_FT_LEVEL; in mlx5e_create_promisc_table() 779 ft_attr.prio = MLX5E_NIC_PRIO; in mlx5e_create_promisc_table() 781 ft->t = mlx5_create_auto_grouped_flow_table(fs->ns, &ft_attr); in mlx5e_create_promisc_table() 895 struct mlx5_flow_table_attr *ft_attr = &ttc_params->ft_attr; in mlx5e_set_inner_ttc_params() local 900 ft_attr->level = MLX5E_INNER_TTC_FT_LEVEL; in mlx5e_set_inner_ttc_params() 901 ft_attr->prio = MLX5E_NIC_PRIO; in mlx5e_set_inner_ttc_params() 918 struct mlx5_flow_table_attr *ft_attr = &ttc_params->ft_attr; in mlx5e_set_ttc_params() local [all …]
|
D | eswitch_offloads_termtbl.c | 68 struct mlx5_flow_table_attr ft_attr = {}; in mlx5_eswitch_termtbl_create() local 81 ft_attr.flags = MLX5_FLOW_TABLE_TERMINATION | MLX5_FLOW_TABLE_UNMANAGED | in mlx5_eswitch_termtbl_create() 83 ft_attr.prio = FDB_TC_OFFLOAD; in mlx5_eswitch_termtbl_create() 84 ft_attr.max_fte = 1; in mlx5_eswitch_termtbl_create() 85 ft_attr.level = 1; in mlx5_eswitch_termtbl_create() 86 ft_attr.autogroup.max_num_groups = 1; in mlx5_eswitch_termtbl_create() 87 tt->termtbl = mlx5_create_auto_grouped_flow_table(root_ns, &ft_attr); in mlx5_eswitch_termtbl_create()
|
D | rdma.c | 27 struct mlx5_flow_table_attr ft_attr = {}; in mlx5_rdma_enable_roce_steering() local 57 ft_attr.max_fte = 1; in mlx5_rdma_enable_roce_steering() 58 ft = mlx5_create_flow_table(ns, &ft_attr); in mlx5_rdma_enable_roce_steering()
|
D | fs_core.c | 1324 struct mlx5_flow_table_attr *ft_attr, in __mlx5_create_flow_table() argument 1329 bool unmanaged = ft_attr->flags & MLX5_FLOW_TABLE_UNMANAGED; in __mlx5_create_flow_table() 1341 fs_prio = find_prio(ns, ft_attr->prio); in __mlx5_create_flow_table() 1350 if (ft_attr->level >= fs_prio->num_levels) { in __mlx5_create_flow_table() 1355 ft_attr->level += fs_prio->start_level; in __mlx5_create_flow_table() 1361 ft = alloc_flow_table(ft_attr->level, in __mlx5_create_flow_table() 1364 op_mod, ft_attr->flags); in __mlx5_create_flow_table() 1371 next_ft = unmanaged ? ft_attr->next_ft : in __mlx5_create_flow_table() 1375 err = root->cmds->create_flow_table(root, ft, ft_attr, next_ft); in __mlx5_create_flow_table() 1409 struct mlx5_flow_table_attr *ft_attr) in mlx5_create_flow_table() argument [all …]
|
/linux-6.12.1/drivers/net/ethernet/mellanox/mlx5/core/en/ |
D | fs_tt_redirect.c | 212 struct mlx5_flow_table_attr ft_attr = {}; in fs_udp_create_table() local 219 ft_attr.max_fte = MLX5E_FS_UDP_TABLE_SIZE; in fs_udp_create_table() 220 ft_attr.level = MLX5E_FS_TT_UDP_FT_LEVEL; in fs_udp_create_table() 221 ft_attr.prio = MLX5E_NIC_PRIO; in fs_udp_create_table() 223 ft->t = mlx5_create_flow_table(ns, &ft_attr); in fs_udp_create_table() 483 struct mlx5_flow_table_attr ft_attr = {}; in fs_any_create_table() local 488 ft_attr.max_fte = MLX5E_FS_UDP_TABLE_SIZE; in fs_any_create_table() 489 ft_attr.level = MLX5E_FS_TT_ANY_FT_LEVEL; in fs_any_create_table() 490 ft_attr.prio = MLX5E_NIC_PRIO; in fs_any_create_table() 492 ft->t = mlx5_create_flow_table(ns, &ft_attr); in fs_any_create_table()
|
/linux-6.12.1/drivers/net/ethernet/mellanox/mlx5/core/esw/acl/ |
D | helper.c | 11 struct mlx5_flow_table_attr ft_attr = {}; in esw_acl_table_create() local 37 ft_attr.max_fte = size; in esw_acl_table_create() 39 ft_attr.flags = MLX5_FLOW_TABLE_OTHER_VPORT; in esw_acl_table_create() 40 acl = mlx5_create_vport_flow_table(root_ns, &ft_attr, vport_num); in esw_acl_table_create()
|
/linux-6.12.1/drivers/net/ethernet/mellanox/mlx5/core/en/tc/ |
D | post_meter.c | 62 struct mlx5_flow_table_attr ft_attr = {}; in mlx5e_post_meter_table_create() local 71 ft_attr.flags = MLX5_FLOW_TABLE_UNMANAGED; in mlx5e_post_meter_table_create() 72 ft_attr.prio = FDB_SLOW_PATH; in mlx5e_post_meter_table_create() 73 ft_attr.max_fte = 2; in mlx5e_post_meter_table_create() 74 ft_attr.level = 1; in mlx5e_post_meter_table_create() 76 return mlx5_create_flow_table(root_ns, &ft_attr); in mlx5e_post_meter_table_create()
|
D | sample.c | 64 struct mlx5_flow_table_attr ft_attr = {}; in sampler_termtbl_create() local 82 ft_attr.flags = MLX5_FLOW_TABLE_TERMINATION | MLX5_FLOW_TABLE_UNMANAGED; in sampler_termtbl_create() 83 ft_attr.autogroup.max_num_groups = 1; in sampler_termtbl_create() 84 ft_attr.prio = FDB_SLOW_PATH; in sampler_termtbl_create() 85 ft_attr.max_fte = 1; in sampler_termtbl_create() 86 ft_attr.level = 1; in sampler_termtbl_create() 87 tc_psample->termtbl = mlx5_create_auto_grouped_flow_table(root_ns, &ft_attr); in sampler_termtbl_create()
|
/linux-6.12.1/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ |
D | fs_tcp.c | 270 struct mlx5_flow_table_attr ft_attr = {}; in accel_fs_tcp_create_table() local 275 ft_attr.max_fte = MLX5E_ACCEL_FS_TCP_TABLE_SIZE; in accel_fs_tcp_create_table() 276 ft_attr.level = MLX5E_ACCEL_FS_TCP_FT_LEVEL; in accel_fs_tcp_create_table() 277 ft_attr.prio = MLX5E_NIC_PRIO; in accel_fs_tcp_create_table() 279 ft->t = mlx5_create_flow_table(ns, &ft_attr); in accel_fs_tcp_create_table()
|
/linux-6.12.1/include/linux/mlx5/ |
D | fs.h | 215 struct mlx5_flow_table_attr *ft_attr); 219 struct mlx5_flow_table_attr *ft_attr); 223 struct mlx5_flow_table_attr *ft_attr, u16 vport);
|