/Linux-v4.19/drivers/net/ethernet/mellanox/mlxsw/ |
D | spectrum_flower.c | 19 struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_flower_parse_actions() argument 30 err = mlxsw_sp_acl_rulei_act_count(mlxsw_sp, rulei, extack); in mlxsw_sp_flower_parse_actions() 36 err = mlxsw_sp_acl_rulei_act_terminate(rulei); in mlxsw_sp_flower_parse_actions() 42 err = mlxsw_sp_acl_rulei_act_drop(rulei); in mlxsw_sp_flower_parse_actions() 48 err = mlxsw_sp_acl_rulei_act_trap(rulei); in mlxsw_sp_flower_parse_actions() 65 err = mlxsw_sp_acl_rulei_act_jump(rulei, group_id); in mlxsw_sp_flower_parse_actions() 77 err = mlxsw_sp_acl_rulei_act_fid_set(mlxsw_sp, rulei, in mlxsw_sp_flower_parse_actions() 83 err = mlxsw_sp_acl_rulei_act_fwd(mlxsw_sp, rulei, in mlxsw_sp_flower_parse_actions() 90 err = mlxsw_sp_acl_rulei_act_mirror(mlxsw_sp, rulei, in mlxsw_sp_flower_parse_actions() 101 return mlxsw_sp_acl_rulei_act_vlan(mlxsw_sp, rulei, in mlxsw_sp_flower_parse_actions() [all …]
|
D | spectrum_acl.c | 76 struct mlxsw_sp_acl_rule_info *rulei; member 440 struct mlxsw_sp_acl_rule_info *rulei; in mlxsw_sp_acl_rulei_create() local 443 rulei = kzalloc(sizeof(*rulei), GFP_KERNEL); in mlxsw_sp_acl_rulei_create() 444 if (!rulei) in mlxsw_sp_acl_rulei_create() 446 rulei->act_block = mlxsw_afa_block_create(acl->mlxsw_sp->afa); in mlxsw_sp_acl_rulei_create() 447 if (IS_ERR(rulei->act_block)) { in mlxsw_sp_acl_rulei_create() 448 err = PTR_ERR(rulei->act_block); in mlxsw_sp_acl_rulei_create() 451 return rulei; in mlxsw_sp_acl_rulei_create() 454 kfree(rulei); in mlxsw_sp_acl_rulei_create() 458 void mlxsw_sp_acl_rulei_destroy(struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp_acl_rulei_destroy() argument [all …]
|
D | spectrum1_acl_tcam.c | 18 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); 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(rulei); in mlxsw_sp1_acl_ctcam_region_catchall_add() [all …]
|
D | spectrum_acl_atcam.c | 37 struct mlxsw_sp_acl_rule_info *rulei, u8 erp_id); 93 struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_atcam_generic_lkey_id_get() argument 223 struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_atcam_12kb_lkey_id_get() argument 233 mlxsw_afk_encode(afk, region->key_info, &rulei->values, ht_key.enc_key, in mlxsw_sp_acl_atcam_12kb_lkey_id_get() 379 struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp_acl_atcam_region_entry_insert() argument 388 err = mlxsw_sp_acl_tcam_priority_get(mlxsw_sp, rulei, &priority, true); in mlxsw_sp_acl_atcam_region_entry_insert() 392 lkey_id = aregion->ops->lkey_id_get(aregion, rulei, erp_id); in mlxsw_sp_acl_atcam_region_entry_insert() 397 kvdl_index = mlxsw_afa_block_first_kvdl_index(rulei->act_block); in mlxsw_sp_acl_atcam_region_entry_insert() 436 struct mlxsw_sp_acl_rule_info *rulei) in __mlxsw_sp_acl_atcam_entry_add() argument 446 mlxsw_afk_encode(afk, region->key_info, &rulei->values, in __mlxsw_sp_acl_atcam_entry_add() [all …]
|
D | spectrum.h | 526 void mlxsw_sp_acl_rulei_destroy(struct mlxsw_sp_acl_rule_info *rulei); 527 int mlxsw_sp_acl_rulei_commit(struct mlxsw_sp_acl_rule_info *rulei); 528 void mlxsw_sp_acl_rulei_priority(struct mlxsw_sp_acl_rule_info *rulei, 530 void mlxsw_sp_acl_rulei_keymask_u32(struct mlxsw_sp_acl_rule_info *rulei, 533 void mlxsw_sp_acl_rulei_keymask_buf(struct mlxsw_sp_acl_rule_info *rulei, 537 int mlxsw_sp_acl_rulei_act_continue(struct mlxsw_sp_acl_rule_info *rulei); 538 int mlxsw_sp_acl_rulei_act_jump(struct mlxsw_sp_acl_rule_info *rulei, 540 int mlxsw_sp_acl_rulei_act_terminate(struct mlxsw_sp_acl_rule_info *rulei); 541 int mlxsw_sp_acl_rulei_act_drop(struct mlxsw_sp_acl_rule_info *rulei); 542 int mlxsw_sp_acl_rulei_act_trap(struct mlxsw_sp_acl_rule_info *rulei); [all …]
|
D | spectrum_acl_ctcam.c | 43 struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_ctcam_region_entry_insert() argument 56 err = mlxsw_sp_acl_tcam_priority_get(mlxsw_sp, rulei, &priority, in mlxsw_sp_acl_ctcam_region_entry_insert() 67 mlxsw_afk_encode(afk, region->key_info, &rulei->values, key, mask, 0, in mlxsw_sp_acl_ctcam_region_entry_insert() 75 act_set = mlxsw_afa_block_first_set(rulei->act_block); in mlxsw_sp_acl_ctcam_region_entry_insert() 166 struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_ctcam_entry_add() argument 177 rulei, fillup_priority); in mlxsw_sp_acl_ctcam_entry_add()
|
D | spectrum_acl_tcam.h | 30 struct mlxsw_sp_acl_rule_info *rulei, 49 struct mlxsw_sp_acl_rule_info *rulei); 118 struct mlxsw_sp_acl_rule_info *rulei, 202 struct mlxsw_sp_acl_rule_info *rulei);
|
D | spectrum_acl_tcam.c | 85 struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_tcam_priority_get() argument 99 if (rulei->priority > max_priority) in mlxsw_sp_acl_tcam_priority_get() 103 *priority = max_priority - rulei->priority; in mlxsw_sp_acl_tcam_priority_get() 743 struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp_acl_tcam_entry_add() argument 750 chunk = mlxsw_sp_acl_tcam_chunk_get(mlxsw_sp, group, rulei->priority, in mlxsw_sp_acl_tcam_entry_add() 751 &rulei->values.elusage); in mlxsw_sp_acl_tcam_entry_add() 758 entry->priv, rulei); in mlxsw_sp_acl_tcam_entry_add() 915 struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp_acl_tcam_flower_rule_add() argument 921 &rule->entry, rulei); in mlxsw_sp_acl_tcam_flower_rule_add()
|
D | spectrum2_acl_tcam.c | 189 struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp2_acl_tcam_entry_add() argument 195 entry->act_block = rulei->act_block; in mlxsw_sp2_acl_tcam_entry_add() 198 rulei); in mlxsw_sp2_acl_tcam_entry_add()
|