Lines Matching refs:rulei

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
460 mlxsw_afa_block_destroy(rulei->act_block); in mlxsw_sp_acl_rulei_destroy()
461 kfree(rulei); in mlxsw_sp_acl_rulei_destroy()
464 int mlxsw_sp_acl_rulei_commit(struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp_acl_rulei_commit() argument
466 return mlxsw_afa_block_commit(rulei->act_block); in mlxsw_sp_acl_rulei_commit()
469 void mlxsw_sp_acl_rulei_priority(struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_rulei_priority() argument
472 rulei->priority = priority >> 16; in mlxsw_sp_acl_rulei_priority()
475 void mlxsw_sp_acl_rulei_keymask_u32(struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_rulei_keymask_u32() argument
479 mlxsw_afk_values_add_u32(&rulei->values, element, in mlxsw_sp_acl_rulei_keymask_u32()
483 void mlxsw_sp_acl_rulei_keymask_buf(struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_rulei_keymask_buf() argument
488 mlxsw_afk_values_add_buf(&rulei->values, element, in mlxsw_sp_acl_rulei_keymask_buf()
492 int mlxsw_sp_acl_rulei_act_continue(struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp_acl_rulei_act_continue() argument
494 return mlxsw_afa_block_continue(rulei->act_block); in mlxsw_sp_acl_rulei_act_continue()
497 int mlxsw_sp_acl_rulei_act_jump(struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_rulei_act_jump() argument
500 return mlxsw_afa_block_jump(rulei->act_block, group_id); in mlxsw_sp_acl_rulei_act_jump()
503 int mlxsw_sp_acl_rulei_act_terminate(struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp_acl_rulei_act_terminate() argument
505 return mlxsw_afa_block_terminate(rulei->act_block); in mlxsw_sp_acl_rulei_act_terminate()
508 int mlxsw_sp_acl_rulei_act_drop(struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp_acl_rulei_act_drop() argument
510 return mlxsw_afa_block_append_drop(rulei->act_block); in mlxsw_sp_acl_rulei_act_drop()
513 int mlxsw_sp_acl_rulei_act_trap(struct mlxsw_sp_acl_rule_info *rulei) in mlxsw_sp_acl_rulei_act_trap() argument
515 return mlxsw_afa_block_append_trap(rulei->act_block, in mlxsw_sp_acl_rulei_act_trap()
520 struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_rulei_act_fwd() argument
547 return mlxsw_afa_block_append_fwd(rulei->act_block, in mlxsw_sp_acl_rulei_act_fwd()
552 struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_rulei_act_mirror() argument
568 return mlxsw_afa_block_append_mirror(rulei->act_block, in mlxsw_sp_acl_rulei_act_mirror()
576 struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_rulei_act_vlan() argument
597 return mlxsw_afa_block_append_vlan_modify(rulei->act_block, in mlxsw_sp_acl_rulei_act_vlan()
608 struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_rulei_act_count() argument
611 return mlxsw_afa_block_append_counter(rulei->act_block, in mlxsw_sp_acl_rulei_act_count()
612 &rulei->counter_index, extack); in mlxsw_sp_acl_rulei_act_count()
616 struct mlxsw_sp_acl_rule_info *rulei, in mlxsw_sp_acl_rulei_act_fid_set() argument
619 return mlxsw_afa_block_append_fid_set(rulei->act_block, fid, extack); in mlxsw_sp_acl_rulei_act_fid_set()
642 rule->rulei = mlxsw_sp_acl_rulei_create(mlxsw_sp->acl); in mlxsw_sp_acl_rule_create()
643 if (IS_ERR(rule->rulei)) { in mlxsw_sp_acl_rule_create()
644 err = PTR_ERR(rule->rulei); in mlxsw_sp_acl_rule_create()
662 mlxsw_sp_acl_rulei_destroy(rule->rulei); in mlxsw_sp_acl_rule_destroy()
674 err = ops->rule_add(mlxsw_sp, ruleset->priv, rule->priv, rule->rulei); in mlxsw_sp_acl_rule_add()
736 return rule->rulei; in mlxsw_sp_acl_rule_rulei()
802 struct mlxsw_sp_acl_rule_info *rulei; in mlxsw_sp_acl_rule_get_stats() local
807 rulei = mlxsw_sp_acl_rule_rulei(rule); in mlxsw_sp_acl_rule_get_stats()
808 err = mlxsw_sp_flow_counter_get(mlxsw_sp, rulei->counter_index, in mlxsw_sp_acl_rule_get_stats()