diff options
author | Chris Mi | 2018-05-16 10:42:52 +0200 |
---|---|---|
committer | Saeed Mahameed | 2018-05-25 23:11:00 +0200 |
commit | a842dd04cf85fbc6e21e65a344b957f4a1dc0413 (patch) | |
tree | d057dd5c836babd713863fc7eb3033cfc42d7c91 /drivers/net/ethernet/mellanox/mlx5/core/eswitch.h | |
parent | net/mlx5: Add cap bits for flow table destination in FDB table (diff) | |
download | kernel-qcow2-linux-a842dd04cf85fbc6e21e65a344b957f4a1dc0413.tar.gz kernel-qcow2-linux-a842dd04cf85fbc6e21e65a344b957f4a1dc0413.tar.xz kernel-qcow2-linux-a842dd04cf85fbc6e21e65a344b957f4a1dc0413.zip |
net/mlx5: E-switch, Create a second level FDB flow table
If firmware supports the forward action with a destination list
that includes a flow table, create a second level FDB flow table.
This is going to be used for flow based mirroring under the switchdev
offloads mode.
Signed-off-by: Chris Mi <chrism@mellanox.com>
Reviewed-by: Paul Blakey <paulb@mellanox.com>
Reviewed-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
Diffstat (limited to 'drivers/net/ethernet/mellanox/mlx5/core/eswitch.h')
-rw-r--r-- | drivers/net/ethernet/mellanox/mlx5/core/eswitch.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/eswitch.h b/drivers/net/ethernet/mellanox/mlx5/core/eswitch.h index d1a3f7fcca1c..d06c11629121 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/eswitch.h +++ b/drivers/net/ethernet/mellanox/mlx5/core/eswitch.h @@ -55,6 +55,9 @@ #define MLX5_RATE_TO_BW_SHARE(rate, divider, limit) \ min_t(u32, max_t(u32, (rate) / (divider), MLX5_MIN_BW_SHARE), limit) +#define mlx5_esw_has_fwd_fdb(dev) \ + MLX5_CAP_ESW_FLOWTABLE(dev, fdb_multi_path_to_table) + struct vport_ingress { struct mlx5_flow_table *acl; struct mlx5_flow_group *allow_untagged_spoofchk_grp; @@ -127,6 +130,7 @@ struct mlx5_eswitch_fdb { struct offloads_fdb { struct mlx5_flow_table *fast_fdb; + struct mlx5_flow_table *fwd_fdb; struct mlx5_flow_table *slow_fdb; struct mlx5_flow_group *send_to_vport_grp; struct mlx5_flow_group *miss_grp; |