1 // SPDX-License-Identifier: BSD-3-Clause OR GPL-2.0
2 /* Copyright (c) 2018 Mellanox Technologies. All rights reserved */
3
4 #include <linux/kernel.h>
5
6 #include "core_acl_flex_actions.h"
7 #include "spectrum.h"
8 #include "spectrum_mr.h"
9
10 static int
mlxsw_sp2_mr_tcam_route_create(struct mlxsw_sp * mlxsw_sp,void * priv,void * route_priv,struct mlxsw_sp_mr_route_key * key,struct mlxsw_afa_block * afa_block,enum mlxsw_sp_mr_route_prio prio)11 mlxsw_sp2_mr_tcam_route_create(struct mlxsw_sp *mlxsw_sp, void *priv,
12 void *route_priv,
13 struct mlxsw_sp_mr_route_key *key,
14 struct mlxsw_afa_block *afa_block,
15 enum mlxsw_sp_mr_route_prio prio)
16 {
17 return 0;
18 }
19
20 static void
mlxsw_sp2_mr_tcam_route_destroy(struct mlxsw_sp * mlxsw_sp,void * priv,void * route_priv,struct mlxsw_sp_mr_route_key * key)21 mlxsw_sp2_mr_tcam_route_destroy(struct mlxsw_sp *mlxsw_sp, void *priv,
22 void *route_priv,
23 struct mlxsw_sp_mr_route_key *key)
24 {
25 }
26
27 static int
mlxsw_sp2_mr_tcam_route_update(struct mlxsw_sp * mlxsw_sp,void * route_priv,struct mlxsw_sp_mr_route_key * key,struct mlxsw_afa_block * afa_block)28 mlxsw_sp2_mr_tcam_route_update(struct mlxsw_sp *mlxsw_sp,
29 void *route_priv,
30 struct mlxsw_sp_mr_route_key *key,
31 struct mlxsw_afa_block *afa_block)
32 {
33 return 0;
34 }
35
mlxsw_sp2_mr_tcam_init(struct mlxsw_sp * mlxsw_sp,void * priv)36 static int mlxsw_sp2_mr_tcam_init(struct mlxsw_sp *mlxsw_sp, void *priv)
37 {
38 return 0;
39 }
40
mlxsw_sp2_mr_tcam_fini(void * priv)41 static void mlxsw_sp2_mr_tcam_fini(void *priv)
42 {
43 }
44
45 const struct mlxsw_sp_mr_tcam_ops mlxsw_sp2_mr_tcam_ops = {
46 .init = mlxsw_sp2_mr_tcam_init,
47 .fini = mlxsw_sp2_mr_tcam_fini,
48 .route_create = mlxsw_sp2_mr_tcam_route_create,
49 .route_destroy = mlxsw_sp2_mr_tcam_route_destroy,
50 .route_update = mlxsw_sp2_mr_tcam_route_update,
51 };
52