| /linux/drivers/net/ethernet/mellanox/mlx5/core/steering/hws/ |
| H A D | definer.c | 1835 hws_definer_find_byte_in_tag(struct mlx5hws_definer *definer, in hws_definer_find_byte_in_tag() argument 1843 dw_to_scan = mlx5hws_definer_is_jumbo(definer) ? in hws_definer_find_byte_in_tag() 1849 if (definer->dw_selector[i] == hl_byte_off / DW_SIZE) { in hws_definer_find_byte_in_tag() 1859 if (definer->byte_selector[i] == hl_byte_off) { in hws_definer_find_byte_in_tag() 1869 hws_definer_fc_bind(struct mlx5hws_definer *definer, in hws_definer_fc_bind() argument 1879 ret = hws_definer_find_byte_in_tag(definer, fc->byte_off, &tag_offset); in hws_definer_fc_bind() 1985 struct mlx5hws_definer *definer) in hws_definer_copy_sel_ctrl() argument 1987 memcpy(definer->byte_selector, ctrl->byte_selector, ctrl->allowed_bytes); in hws_definer_copy_sel_ctrl() 1988 memcpy(definer->dw_selector, ctrl->full_dw_selector, ctrl->allowed_full_dw); in hws_definer_copy_sel_ctrl() 1989 memcpy(definer->dw_selector + ctrl->allowed_full_dw, in hws_definer_copy_sel_ctrl() [all …]
|
| H A D | debug.c | 13 struct mlx5hws_definer *definer, in hws_debug_dump_matcher_template_definer() argument 18 if (!definer) in hws_debug_dump_matcher_template_definer() 23 HWS_PTR_TO_ID(definer), in hws_debug_dump_matcher_template_definer() 25 definer->obj_id, in hws_debug_dump_matcher_template_definer() 26 definer->type); in hws_debug_dump_matcher_template_definer() 29 seq_printf(f, "0x%x%s", definer->dw_selector[i], in hws_debug_dump_matcher_template_definer() 33 seq_printf(f, "0x%x%s", definer->byte_selector[i], in hws_debug_dump_matcher_template_definer() 37 seq_printf(f, "%02x", definer->mask.jumbo[i]); in hws_debug_dump_matcher_template_definer() 61 ret = hws_debug_dump_matcher_template_definer(f, mt, mt->definer, type); in hws_debug_dump_matcher_match_template()
|
| H A D | cmd.c | 769 ptr = MLX5_ADDR_OF(create_definer_in, in, definer); in mlx5hws_cmd_definer_create() 770 MLX5_SET(definer, ptr, format_id, MLX5_IFC_DEFINER_FORMAT_ID_SELECT); in mlx5hws_cmd_definer_create() 772 MLX5_SET(definer, ptr, format_select_dw0, def_attr->dw_selector[0]); in mlx5hws_cmd_definer_create() 773 MLX5_SET(definer, ptr, format_select_dw1, def_attr->dw_selector[1]); in mlx5hws_cmd_definer_create() 774 MLX5_SET(definer, ptr, format_select_dw2, def_attr->dw_selector[2]); in mlx5hws_cmd_definer_create() 775 MLX5_SET(definer, ptr, format_select_dw3, def_attr->dw_selector[3]); in mlx5hws_cmd_definer_create() 776 MLX5_SET(definer, ptr, format_select_dw4, def_attr->dw_selector[4]); in mlx5hws_cmd_definer_create() 777 MLX5_SET(definer, ptr, format_select_dw5, def_attr->dw_selector[5]); in mlx5hws_cmd_definer_create() 778 MLX5_SET(definer, ptr, format_select_dw6, def_attr->dw_selector[6]); in mlx5hws_cmd_definer_create() 779 MLX5_SET(definer, ptr, format_select_dw7, def_attr->dw_selector[7]); in mlx5hws_cmd_definer_create() [all …]
|
| H A D | matcher.h | 41 struct mlx5hws_definer *definer; member 88 return mlx5hws_definer_is_jumbo(mt->definer); in mlx5hws_matcher_mt_is_jumbo()
|
| H A D | action.c | 1556 struct mlx5hws_definer *definer; in hws_action_create_dest_match_range_definer() local 1560 definer = kzalloc_obj(*definer); in hws_action_create_dest_match_range_definer() 1561 if (!definer) in hws_action_create_dest_match_range_definer() 1564 definer->dw_selector[0] = MLX5_IFC_DEFINER_FORMAT_OFFSET_OUTER_ETH_PKT_LEN / 4; in hws_action_create_dest_match_range_definer() 1566 tag = (__force __be32 *)definer->mask.jumbo; in hws_action_create_dest_match_range_definer() 1571 ret = mlx5hws_definer_get_obj(ctx, definer); in hws_action_create_dest_match_range_definer() 1574 kfree(definer); in hws_action_create_dest_match_range_definer() 1579 definer->obj_id = ret; in hws_action_create_dest_match_range_definer() 1581 return definer; in hws_action_create_dest_match_range_definer() 1586 struct mlx5hws_definer *definer, in hws_action_create_dest_match_range_table() argument [all …]
|
| H A D | matcher.c | 494 rtc_attr.match_definer_0 = mlx5hws_definer_get_id(mt->definer); in hws_matcher_create_rtc() 506 mlx5hws_definer_get_id(mt->definer); in hws_matcher_create_rtc() 1247 if (mlx5hws_definer_compare(src_matcher->mt[i].definer, in hws_matcher_resize_precheck() 1248 dst_matcher->mt[i].definer)) { in hws_matcher_resize_precheck()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/steering/sws/ |
| H A D | dr_definer.c | 16 static bool dr_definer_compare(struct dr_definer_object *definer, in dr_definer_compare() argument 22 if (definer->format_id != format_id) in dr_definer_compare() 26 if (definer->dw_selectors[i] != dw_selectors[i]) in dr_definer_compare() 30 if (definer->byte_selectors[i] != byte_selectors[i]) in dr_definer_compare() 33 if (memcmp(definer->match_mask, match_mask, DR_STE_SIZE_MATCH_TAG)) in dr_definer_compare()
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/lag/ |
| H A D | port_sel.c | 15 struct mlx5_flow_definer *definer, in mlx5_create_hash_flow_group() argument 27 mlx5_get_match_definer_id(definer)); in mlx5_create_hash_flow_group() 70 lag_definer->definer, in mlx5_lag_create_port_sel_table() 324 lag_definer->definer = in mlx5_lag_create_definer() 327 if (IS_ERR(lag_definer->definer)) { in mlx5_lag_create_definer() 328 err = PTR_ERR(lag_definer->definer); in mlx5_lag_create_definer() 341 mlx5_destroy_match_definer(dev, lag_definer->definer); in mlx5_lag_create_definer() 368 mlx5_destroy_match_definer(dev, lag_definer->definer); in mlx5_lag_destroy_definer()
|
| H A D | port_sel.h | 10 struct mlx5_flow_definer *definer; member
|
| /linux/include/linux/mlx5/ |
| H A D | fs.h | 356 struct mlx5_flow_definer *definer); 357 int mlx5_get_match_definer_id(struct mlx5_flow_definer *definer);
|
| /linux/drivers/net/ethernet/mellanox/mlx5/core/ |
| H A D | fs_core.c | 4207 int mlx5_get_match_definer_id(struct mlx5_flow_definer *definer) in mlx5_get_match_definer_id() argument 4209 return definer->id; in mlx5_get_match_definer_id() 4218 struct mlx5_flow_definer *definer; in mlx5_create_match_definer() local 4225 definer = kzalloc_obj(*definer); in mlx5_create_match_definer() 4226 if (!definer) in mlx5_create_match_definer() 4229 definer->ns_type = ns_type; in mlx5_create_match_definer() 4233 kfree(definer); in mlx5_create_match_definer() 4236 definer->id = id; in mlx5_create_match_definer() 4237 return definer; in mlx5_create_match_definer() 4241 struct mlx5_flow_definer *definer) in mlx5_destroy_match_definer() argument [all …]
|