[PATCH v4 net-next 00/13] Add ethtool ntuple filters support
From: Naveen Mamindlapalli
Date: Sat Nov 14 2020 - 14:53:34 EST
This patch series adds support for ethtool ntuple filters, unicast
address filtering, VLAN offload and SR-IOV ndo handlers. All of the
above features are based on the Admin Function(AF) driver support to
install and delete the low level MCAM entries. Each MCAM entry is
programmed with the packet fields to match and what actions to take
if the match succeeds. The PF driver requests AF driver to allocate
set of MCAM entries to be used to install the flows by that PF. The
entries will be freed when the PF driver is unloaded.
* The patches 1 to 4 adds AF driver infrastructure to install and
delete the low level MCAM flow entries.
* Patch 5 adds ethtool ntuple filter support.
* Patch 6 adds unicast MAC address filtering.
* Patch 7 adds support for dumping the MCAM entries via debugfs.
* Patches 8 to 10 adds support for VLAN offload.
* Patch 10 to 11 adds support for SR-IOV ndo handlers.
* Patch 12 adds support to read the MCAM entries.
Misc:
* Removed redundant mailbox NIX_RXVLAN_ALLOC.
Change-log:
v4:
- Fixed review comments from Alexander Duyck on v3.
- Added macros for KEX profile configuration values.
- TCP/UDP SPORT+DPORT extracted using single entry.
- Use eth_broadcast_addr() instead of memcpy to avoid one extra variable.
- Fix "ether type" to "Ethertype" & "meta data" to "metadata" in comments.
- Added more comments.
v3:
- Fixed Saeed's review comments on v2.
- Fixed modifying the netdev->flags from driver.
- Fixed modifying the netdev features and hw_features after register_netdev.
- Removed unwanted ndo_features_check callback.
v2:
- Fixed the sparse issues reported by Jakub.
Hariprasad Kelam (3):
octeontx2-pf: Add support for unicast MAC address filtering
octeontx2-pf: Implement ingress/egress VLAN offload
octeontx2-af: Handle PF-VF mac address changes
Naveen Mamindlapalli (2):
octeontx2-pf: Add support for SR-IOV management functions
octeontx2-af: Add new mbox messages to retrieve MCAM entries
Stanislaw Kardach (1):
octeontx2-af: Modify default KEX profile to extract TX packet fields
Subbaraya Sundeep (6):
octeontx2-af: Verify MCAM entry channel and PF_FUNC
octeontx2-af: Generate key field bit mask from KEX profile
octeontx2-af: Add mbox messages to install and delete MCAM rules
octeontx2-pf: Add support for ethtool ntuple filters
octeontx2-af: Add debugfs entry to dump the MCAM rules
octeontx2-af: Delete NIX_RXVLAN_ALLOC mailbox message
Vamsi Attunuru (1):
octeontx2-af: Modify nix_vtag_cfg mailbox to support TX VTAG entries
drivers/net/ethernet/marvell/octeontx2/af/Makefile | 2 +-
drivers/net/ethernet/marvell/octeontx2/af/common.h | 2 +
drivers/net/ethernet/marvell/octeontx2/af/mbox.h | 170 ++-
drivers/net/ethernet/marvell/octeontx2/af/npc.h | 137 +-
.../ethernet/marvell/octeontx2/af/npc_profile.h | 99 +-
drivers/net/ethernet/marvell/octeontx2/af/rvu.c | 16 +-
drivers/net/ethernet/marvell/octeontx2/af/rvu.h | 71 +-
.../ethernet/marvell/octeontx2/af/rvu_debugfs.c | 197 +++
.../net/ethernet/marvell/octeontx2/af/rvu_nix.c | 303 ++++-
.../net/ethernet/marvell/octeontx2/af/rvu_npc.c | 461 ++++++-
.../net/ethernet/marvell/octeontx2/af/rvu_npc_fs.c | 1334 ++++++++++++++++++++
.../net/ethernet/marvell/octeontx2/af/rvu_struct.h | 11 +
.../net/ethernet/marvell/octeontx2/nic/Makefile | 2 +-
.../ethernet/marvell/octeontx2/nic/otx2_common.c | 8 +-
.../ethernet/marvell/octeontx2/nic/otx2_common.h | 59 +
.../ethernet/marvell/octeontx2/nic/otx2_ethtool.c | 58 +-
.../ethernet/marvell/octeontx2/nic/otx2_flows.c | 820 ++++++++++++
.../net/ethernet/marvell/octeontx2/nic/otx2_pf.c | 307 ++++-
.../net/ethernet/marvell/octeontx2/nic/otx2_txrx.c | 16 +
.../net/ethernet/marvell/octeontx2/nic/otx2_vf.c | 5 +
20 files changed, 3909 insertions(+), 169 deletions(-)
create mode 100644 drivers/net/ethernet/marvell/octeontx2/af/rvu_npc_fs.c
create mode 100644 drivers/net/ethernet/marvell/octeontx2/nic/otx2_flows.c
--
2.16.5