mirror of
https://github.com/torvalds/linux.git
synced 2024-12-17 00:21:32 +00:00
mlxsw: spectrum: acl: Remove mlxsw_afk_encode() block range args and key/mask check
Since two remaining users of mlxsw_afk_encode() do not specify block ranges to work on, remove the args. Also, key/mask is always non-NULL now, so skip the checks. Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: Ido Schimmel <idosch@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
b1ce60e621
commit
59600844cf
@ -426,15 +426,17 @@ mlxsw_sp_afk_encode_one(const struct mlxsw_afk_element_inst *elinst,
|
||||
void mlxsw_afk_encode(struct mlxsw_afk *mlxsw_afk,
|
||||
struct mlxsw_afk_key_info *key_info,
|
||||
struct mlxsw_afk_element_values *values,
|
||||
char *key, char *mask, int block_start, int block_end)
|
||||
char *key, char *mask)
|
||||
{
|
||||
unsigned int blocks_count =
|
||||
mlxsw_afk_key_info_blocks_count_get(key_info);
|
||||
char block_mask[MLXSW_SP_AFK_KEY_BLOCK_MAX_SIZE];
|
||||
char block_key[MLXSW_SP_AFK_KEY_BLOCK_MAX_SIZE];
|
||||
const struct mlxsw_afk_element_inst *elinst;
|
||||
enum mlxsw_afk_element element;
|
||||
int block_index, i;
|
||||
|
||||
for (i = block_start; i <= block_end; i++) {
|
||||
for (i = 0; i < blocks_count; i++) {
|
||||
memset(block_key, 0, MLXSW_SP_AFK_KEY_BLOCK_MAX_SIZE);
|
||||
memset(block_mask, 0, MLXSW_SP_AFK_KEY_BLOCK_MAX_SIZE);
|
||||
|
||||
@ -451,10 +453,8 @@ void mlxsw_afk_encode(struct mlxsw_afk *mlxsw_afk,
|
||||
values->storage.mask);
|
||||
}
|
||||
|
||||
if (key)
|
||||
mlxsw_afk->ops->encode_block(key, i, block_key);
|
||||
if (mask)
|
||||
mlxsw_afk->ops->encode_block(mask, i, block_mask);
|
||||
mlxsw_afk->ops->encode_block(key, i, block_key);
|
||||
mlxsw_afk->ops->encode_block(mask, i, block_mask);
|
||||
}
|
||||
}
|
||||
EXPORT_SYMBOL(mlxsw_afk_encode);
|
||||
|
@ -229,7 +229,7 @@ void mlxsw_afk_values_add_buf(struct mlxsw_afk_element_values *values,
|
||||
void mlxsw_afk_encode(struct mlxsw_afk *mlxsw_afk,
|
||||
struct mlxsw_afk_key_info *key_info,
|
||||
struct mlxsw_afk_element_values *values,
|
||||
char *key, char *mask, int block_start, int block_end);
|
||||
char *key, char *mask);
|
||||
void mlxsw_afk_clear(struct mlxsw_afk *mlxsw_afk, char *key,
|
||||
int block_start, int block_end);
|
||||
|
||||
|
@ -439,12 +439,10 @@ __mlxsw_sp_acl_atcam_entry_add(struct mlxsw_sp *mlxsw_sp,
|
||||
char mask[MLXSW_REG_PTCEX_FLEX_KEY_BLOCKS_LEN] = { 0 };
|
||||
struct mlxsw_afk *afk = mlxsw_sp_acl_afk(mlxsw_sp->acl);
|
||||
struct mlxsw_sp_acl_erp_mask *erp_mask;
|
||||
unsigned int blocks_count;
|
||||
int err;
|
||||
|
||||
blocks_count = mlxsw_afk_key_info_blocks_count_get(region->key_info);
|
||||
mlxsw_afk_encode(afk, region->key_info, &rulei->values,
|
||||
aentry->ht_key.enc_key, mask, 0, blocks_count - 1);
|
||||
aentry->ht_key.enc_key, mask);
|
||||
|
||||
erp_mask = mlxsw_sp_acl_erp_mask_get(aregion, mask, false);
|
||||
if (IS_ERR(erp_mask))
|
||||
|
@ -46,7 +46,6 @@ mlxsw_sp_acl_ctcam_region_entry_insert(struct mlxsw_sp *mlxsw_sp,
|
||||
struct mlxsw_sp_acl_tcam_region *region = cregion->region;
|
||||
struct mlxsw_afk *afk = mlxsw_sp_acl_afk(mlxsw_sp->acl);
|
||||
char ptce2_pl[MLXSW_REG_PTCE2_LEN];
|
||||
unsigned int blocks_count;
|
||||
char *act_set;
|
||||
u32 priority;
|
||||
char *mask;
|
||||
@ -63,9 +62,7 @@ mlxsw_sp_acl_ctcam_region_entry_insert(struct mlxsw_sp *mlxsw_sp,
|
||||
centry->parman_item.index, priority);
|
||||
key = mlxsw_reg_ptce2_flex_key_blocks_data(ptce2_pl);
|
||||
mask = mlxsw_reg_ptce2_mask_data(ptce2_pl);
|
||||
blocks_count = mlxsw_afk_key_info_blocks_count_get(region->key_info);
|
||||
mlxsw_afk_encode(afk, region->key_info, &rulei->values, key, mask, 0,
|
||||
blocks_count - 1);
|
||||
mlxsw_afk_encode(afk, region->key_info, &rulei->values, key, mask);
|
||||
|
||||
err = cregion->ops->entry_insert(cregion, centry, mask);
|
||||
if (err)
|
||||
|
Loading…
Reference in New Issue
Block a user