v2: - Split into 2 series: public api and mlx5, this one is the second. - Rebased on Adrien's rte flow overhaul: http://www.dpdk.org/ml/archives/dev/2018-April/095774.html v1: - Support new tunnel type MPLS-in-GRE and MPLS-in-UDP - Remove deprecation notes of rss level
This patchset supports MLX5 Rx tunnel checksum, inner rss, inner ptype offloading of following tunnel types: - Standard VXLAN - L3 VXLAN (no inner ethernet header) - VXLAN-GPE - MPLS-in-GRE - MPLS-in-GPE Xueming Li (15): net/mlx5: support 16 hardware priorities net/mlx5: support GRE tunnel flow net/mlx5: support L3 vxlan flow net/mlx5: support Rx tunnel type identification net/mlx5: support tunnel inner checksum offloads net/mlx5: split flow RSS handling logic net/mlx5: support tunnel RSS level net/mlx5: add hardware flow debug dump net/mlx5: introduce VXLAN-GPE tunnel type net/mlx5: allow flow tunnel ID 0 with outer pattern net/mlx5: support MPLS-in-GRE and MPLS-in-UDP doc: update mlx5 guide on tunnel offloading net/mlx5: setup RSS flow regardless of queue count net/mlx5: fix invalid flow item check net/mlx5: support RSS configuration in isolated mode doc/guides/nics/mlx5.rst | 4 +- drivers/net/mlx5/Makefile | 7 +- drivers/net/mlx5/mlx5.c | 29 ++ drivers/net/mlx5/mlx5.h | 9 + drivers/net/mlx5/mlx5_flow.c | 920 ++++++++++++++++++++++++++++------ drivers/net/mlx5/mlx5_glue.c | 16 + drivers/net/mlx5/mlx5_glue.h | 8 + drivers/net/mlx5/mlx5_rxq.c | 80 ++- drivers/net/mlx5/mlx5_rxtx.c | 33 +- drivers/net/mlx5/mlx5_rxtx.h | 11 +- drivers/net/mlx5/mlx5_rxtx_vec_neon.h | 21 +- drivers/net/mlx5/mlx5_rxtx_vec_sse.h | 17 +- drivers/net/mlx5/mlx5_trigger.c | 8 - drivers/net/mlx5/mlx5_utils.h | 6 + 14 files changed, 951 insertions(+), 218 deletions(-) -- 2.13.3