summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/mellanox/mlxsw/core_acl_flex_keys.h
diff options
context:
space:
mode:
authorJiri Pirko2018-07-08 22:51:22 +0200
committerDavid S. Miller2018-07-10 01:24:17 +0200
commitc17d20838eff75caf14a25cf7bf2a532fa360820 (patch)
treece4cfbf10d47db73210751981479554ae319be99 /drivers/net/ethernet/mellanox/mlxsw/core_acl_flex_keys.h
parentmlxsw: spectrum_acl: Add tcam init/fini ops (diff)
downloadkernel-qcow2-linux-c17d20838eff75caf14a25cf7bf2a532fa360820.tar.gz
kernel-qcow2-linux-c17d20838eff75caf14a25cf7bf2a532fa360820.tar.xz
kernel-qcow2-linux-c17d20838eff75caf14a25cf7bf2a532fa360820.zip
mlxsw: spectrum_acl: Convert mlxsw_afk_create args to ops
Since the flex keys for Spectrum-2 differ not only in blocks definitions but also in encoding layout, prepare for the implementation and pass Spectrum/Spectrum-2 specific ops down to mlxsw_afk_create. 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>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlxsw/core_acl_flex_keys.h')
-rw-r--r--drivers/net/ethernet/mellanox/mlxsw/core_acl_flex_keys.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/net/ethernet/mellanox/mlxsw/core_acl_flex_keys.h b/drivers/net/ethernet/mellanox/mlxsw/core_acl_flex_keys.h
index 154eccd64019..6d3817dcb0f3 100644
--- a/drivers/net/ethernet/mellanox/mlxsw/core_acl_flex_keys.h
+++ b/drivers/net/ethernet/mellanox/mlxsw/core_acl_flex_keys.h
@@ -216,9 +216,13 @@ mlxsw_afk_element_usage_subset(struct mlxsw_afk_element_usage *elusage_small,
struct mlxsw_afk;
+struct mlxsw_afk_ops {
+ const struct mlxsw_afk_block *blocks;
+ unsigned int blocks_count;
+};
+
struct mlxsw_afk *mlxsw_afk_create(unsigned int max_blocks,
- const struct mlxsw_afk_block *blocks,
- unsigned int blocks_count);
+ const struct mlxsw_afk_ops *ops);
void mlxsw_afk_destroy(struct mlxsw_afk *mlxsw_afk);
struct mlxsw_afk_key_info;