Add basic flow steering. For now, we support IPv4 and TCP/UDP only.
Patch 1 renames "enum virtchnl2_cap_rss" to a more generic "enum
virtchnl2_flow_types" that can be used with RSS and flow steering.
Patch 2 adds the required flow steering virtchnl2 OP codes and patch 3
adds the required flow steering ethtool ntuple ops to the idpf driver.
---
v5:
- Use u32 instead of u16 for num_fsteer_fltrs (patch 3).
- Pass OP codes to idpf_add_del_fsteer_filters() (patch 3).
- Use u32 instead of u16 for fltr->q_index (patch 3).
- Use ternary operator in idpf_add_flow_steer() (patch 3).
v4: -
https://lore.kernel.org/netdev/[email protected]/
- Fix some conflicts in patch 2 (after PTP series).
v3: -
https://lore.kernel.org/netdev/[email protected]/
- Fix sparse errors in patch 3 (Tony).
v2: -
https://lore.kernel.org/netdev/[email protected]/
- Rename "enum virtchnl2_cap_rss" to virtchnl2_flow_types in
a separate patch (Patch 1).
- Change comments of freed BIT(6, 13) in patch 2 (Tony).
- Remove extra lines before VIRTCHNL2_CHECK_STRUCT_LEN (this makes
checkpatch complaints, but Tony believes this is preferred.
- Expand commit of patch 3 (Sridhar).
- Fix lkp build error (patch 3).
- Move 'include "idpf_virtchnl.h"' from idpf.h to idpf_ethtool.c
(patch 3) (Olek).
- Expand the cover letter text (Olek).
- Fix kdocs warnings.
v1:
-
https://lore.kernel.org/netdev/[email protected]/
Ahmed Zaki (2):
virtchnl2: rename enum virtchnl2_cap_rss
idpf: add flow steering support
Sudheer Mogilappagari (1):
virtchnl2: add flow steering support
drivers/net/ethernet/intel/idpf/idpf.h | 33 +-
.../net/ethernet/intel/idpf/idpf_ethtool.c | 298 +++++++++++++++++-
drivers/net/ethernet/intel/idpf/idpf_lib.c | 5 +
.../net/ethernet/intel/idpf/idpf_virtchnl.c | 124 +++++++-
.../net/ethernet/intel/idpf/idpf_virtchnl.h | 6 +
drivers/net/ethernet/intel/idpf/virtchnl2.h | 238 ++++++++++++--
6 files changed, 660 insertions(+), 44 deletions(-)
--
2.43.0