Home
last modified time | relevance | path

Searched refs:rulei (Results 1 – 10 of 10) sorted by relevance

/linux/drivers/net/ethernet/mellanox/mlxsw/
H A Dspectrum_acl.c71 struct mlxsw_sp_acl_rule_info *rulei; member
318 struct mlxsw_sp_acl_rule_info *rulei; in mlxsw_sp_acl_rulei_create() local
321 rulei = kzalloc(sizeof(*rulei), GFP_KERNEL); in mlxsw_sp_acl_rulei_create()
322 if (!rulei) in mlxsw_sp_acl_rulei_create()
326 rulei->act_block = afa_block; in mlxsw_sp_acl_rulei_create()
327 return rulei; in mlxsw_sp_acl_rulei_create()
330 rulei->act_block = mlxsw_afa_block_create(acl->mlxsw_sp->afa); in mlxsw_sp_acl_rulei_create()
331 if (IS_ERR(rulei->act_block)) { in mlxsw_sp_acl_rulei_create()
332 err = PTR_ERR(rulei->act_block); in mlxsw_sp_acl_rulei_create()
335 rulei->action_created = 1; in mlxsw_sp_acl_rulei_create()
[all …]
H A Dspectrum_flower.c60 struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_flower_parse_actions() argument
80 err = mlxsw_sp_acl_rulei_act_count(mlxsw_sp, rulei, extack); in mlxsw_sp_flower_parse_actions()
91 err = mlxsw_sp_acl_rulei_act_terminate(rulei); in mlxsw_sp_flower_parse_actions()
105 err = mlxsw_sp_acl_rulei_act_drop(rulei, ingress, in mlxsw_sp_flower_parse_actions()
117 rulei->egress_bind_blocker = 1; in mlxsw_sp_flower_parse_actions()
119 rulei->ingress_bind_blocker = 1; in mlxsw_sp_flower_parse_actions()
123 err = mlxsw_sp_acl_rulei_act_trap(rulei); in mlxsw_sp_flower_parse_actions()
141 err = mlxsw_sp_acl_rulei_act_jump(rulei, group_id); in mlxsw_sp_flower_parse_actions()
161 rulei->egress_bind_blocker = 1; in mlxsw_sp_flower_parse_actions()
166 err = mlxsw_sp_acl_rulei_act_ignore(mlxsw_sp, rulei, in mlxsw_sp_flower_parse_actions()
[all …]
H A Dspectrum1_acl_tcam.c18 struct mlxsw_sp_acl_rule_info *rulei; member
64 struct mlxsw_sp_acl_rule_info *rulei; in mlxsw_sp1_acl_ctcam_region_catchall_add() local
70 rulei = mlxsw_sp_acl_rulei_create(mlxsw_sp->acl, NULL); in mlxsw_sp1_acl_ctcam_region_catchall_add()
71 if (IS_ERR(rulei)) { in mlxsw_sp1_acl_ctcam_region_catchall_add()
72 err = PTR_ERR(rulei); in mlxsw_sp1_acl_ctcam_region_catchall_add()
75 err = mlxsw_sp_acl_rulei_act_continue(rulei); in mlxsw_sp1_acl_ctcam_region_catchall_add()
78 err = mlxsw_sp_acl_rulei_commit(rulei); in mlxsw_sp1_acl_ctcam_region_catchall_add()
84 rulei, false); in mlxsw_sp1_acl_ctcam_region_catchall_add()
87 region->catchall.rulei = rulei; in mlxsw_sp1_acl_ctcam_region_catchall_add()
93 mlxsw_sp_acl_rulei_destroy(mlxsw_sp, rulei); in mlxsw_sp1_acl_ctcam_region_catchall_add()
[all …]
H A Dspectrum2_mr_tcam.c142 mlxsw_sp2_mr_tcam_rule_parse4(struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp2_mr_tcam_rule_parse4() argument
145 mlxsw_sp_acl_rulei_keymask_u32(rulei, MLXSW_AFK_ELEMENT_VIRT_ROUTER, in mlxsw_sp2_mr_tcam_rule_parse4()
147 mlxsw_sp_acl_rulei_keymask_buf(rulei, MLXSW_AFK_ELEMENT_SRC_IP_0_31, in mlxsw_sp2_mr_tcam_rule_parse4()
150 mlxsw_sp_acl_rulei_keymask_buf(rulei, MLXSW_AFK_ELEMENT_DST_IP_0_31, in mlxsw_sp2_mr_tcam_rule_parse4()
156 mlxsw_sp2_mr_tcam_rule_parse6(struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp2_mr_tcam_rule_parse6() argument
159 mlxsw_sp_acl_rulei_keymask_u32(rulei, MLXSW_AFK_ELEMENT_VIRT_ROUTER_0_3, in mlxsw_sp2_mr_tcam_rule_parse6()
161 mlxsw_sp_acl_rulei_keymask_u32(rulei, MLXSW_AFK_ELEMENT_VIRT_ROUTER_4_7, in mlxsw_sp2_mr_tcam_rule_parse6()
163 mlxsw_sp_acl_rulei_keymask_u32(rulei, in mlxsw_sp2_mr_tcam_rule_parse6()
166 mlxsw_sp_acl_rulei_keymask_buf(rulei, MLXSW_AFK_ELEMENT_SRC_IP_96_127, in mlxsw_sp2_mr_tcam_rule_parse6()
169 mlxsw_sp_acl_rulei_keymask_buf(rulei, MLXSW_AFK_ELEMENT_SRC_IP_64_95, in mlxsw_sp2_mr_tcam_rule_parse6()
[all …]
H A Dspectrum_acl_ctcam.c43 struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_ctcam_region_entry_insert() argument
55 err = mlxsw_sp_acl_tcam_priority_get(mlxsw_sp, rulei, &priority, in mlxsw_sp_acl_ctcam_region_entry_insert()
65 mlxsw_afk_encode(afk, region->key_info, &rulei->values, key, mask); in mlxsw_sp_acl_ctcam_region_entry_insert()
72 act_set = mlxsw_afa_block_first_set(rulei->act_block); in mlxsw_sp_acl_ctcam_region_entry_insert()
192 struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_ctcam_entry_add() argument
203 rulei, fillup_priority); in mlxsw_sp_acl_ctcam_entry_add()
227 struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp_acl_ctcam_entry_action_replace() argument
231 rulei->act_block, in mlxsw_sp_acl_ctcam_entry_action_replace()
232 rulei->priority); in mlxsw_sp_acl_ctcam_entry_action_replace()
H A Dspectrum_acl_atcam.c381 struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp_acl_atcam_region_entry_insert() argument
390 err = mlxsw_sp_acl_tcam_priority_get(mlxsw_sp, rulei, &priority, true); in mlxsw_sp_acl_atcam_region_entry_insert()
400 kvdl_index = mlxsw_afa_block_first_kvdl_index(rulei->act_block); in mlxsw_sp_acl_atcam_region_entry_insert()
446 struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp_acl_atcam_region_entry_action_replace() argument
455 err = mlxsw_sp_acl_tcam_priority_get(mlxsw_sp, rulei, &priority, true); in mlxsw_sp_acl_atcam_region_entry_action_replace()
458 kvdl_index = mlxsw_afa_block_first_kvdl_index(rulei->act_block); in mlxsw_sp_acl_atcam_region_entry_action_replace()
474 struct mlxsw_sp_acl_rule_info *rulei) in __mlxsw_sp_acl_atcam_entry_add() argument
483 mlxsw_afk_encode(afk, region->key_info, &rulei->values, in __mlxsw_sp_acl_atcam_entry_add()
525 rulei); in __mlxsw_sp_acl_atcam_entry_add()
559 struct mlxsw_sp_acl_rule_info *rulei) in __mlxsw_sp_acl_atcam_entry_action_replace() argument
[all …]
H A Dspectrum_acl_tcam.h34 struct mlxsw_sp_acl_rule_info *rulei,
54 struct mlxsw_sp_acl_rule_info *rulei);
57 struct mlxsw_sp_acl_rule_info *rulei);
126 struct mlxsw_sp_acl_rule_info *rulei,
135 struct mlxsw_sp_acl_rule_info *rulei);
224 struct mlxsw_sp_acl_rule_info *rulei);
232 struct mlxsw_sp_acl_rule_info *rulei);
H A Dspectrum2_acl_tcam.c213 struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp2_acl_tcam_entry_add() argument
219 entry->act_block = rulei->act_block; in mlxsw_sp2_acl_tcam_entry_add()
222 rulei); in mlxsw_sp2_acl_tcam_entry_add()
240 struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp2_acl_tcam_entry_action_replace() argument
245 entry->act_block = rulei->act_block; in mlxsw_sp2_acl_tcam_entry_action_replace()
248 &entry->aentry, rulei); in mlxsw_sp2_acl_tcam_entry_action_replace()
H A Dspectrum.h1004 struct mlxsw_sp_acl_rule_info *rulei);
1005 int mlxsw_sp_acl_rulei_commit(struct mlxsw_sp_acl_rule_info *rulei);
1006 void mlxsw_sp_acl_rulei_priority(struct mlxsw_sp_acl_rule_info *rulei,
1008 void mlxsw_sp_acl_rulei_keymask_u32(struct mlxsw_sp_acl_rule_info *rulei,
1011 void mlxsw_sp_acl_rulei_keymask_buf(struct mlxsw_sp_acl_rule_info *rulei,
1015 int mlxsw_sp_acl_rulei_act_continue(struct mlxsw_sp_acl_rule_info *rulei);
1016 int mlxsw_sp_acl_rulei_act_jump(struct mlxsw_sp_acl_rule_info *rulei,
1018 int mlxsw_sp_acl_rulei_act_terminate(struct mlxsw_sp_acl_rule_info *rulei);
1019 int mlxsw_sp_acl_rulei_act_drop(struct mlxsw_sp_acl_rule_info *rulei,
1023 int mlxsw_sp_acl_rulei_act_trap(struct mlxsw_sp_acl_rule_info *rulei);
[all …]
H A Dspectrum_acl_tcam.c36 struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_tcam_priority_get() argument
51 if (rulei->priority >= max_priority) in mlxsw_sp_acl_tcam_priority_get()
55 *priority = max_priority - rulei->priority; in mlxsw_sp_acl_tcam_priority_get()
197 struct mlxsw_sp_acl_rule_info *rulei; member
1064 entry->priv, ventry->rulei); in mlxsw_sp_acl_tcam_entry_create()
1089 struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp_acl_tcam_entry_action_replace() argument
1094 entry->priv, rulei); in mlxsw_sp_acl_tcam_entry_action_replace()
1111 struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp_acl_tcam_ventry_add() argument
1117 vchunk = mlxsw_sp_acl_tcam_vchunk_get(mlxsw_sp, vgroup, rulei->priority, in mlxsw_sp_acl_tcam_ventry_add()
1118 &rulei->values.elusage); in mlxsw_sp_acl_tcam_ventry_add()
[all …]