From: Sunil Goutham <sgoutham@xxxxxxxxxxx> This patchset is a continuation to earlier submitted two patch series to add a new driver for Marvell's OcteonTX2 SOC's Resource virtualization unit (RVU) admin function driver. 1. octeontx2-af: Add RVU Admin Function driver https://www.spinics.net/lists/netdev/msg528272.html 2. octeontx2-af: NPA and NIX blocks initialization https://www.spinics.net/lists/netdev/msg529163.html This patch series adds more NIX block configuration logic and additionally adds NPC block parser profile configuration. In brief below is what this series adds. NIX block: - Support for PF/VF to allocate/free transmit scheduler queues, maintenance and their configuration. - Adds support for packet replication lists, only broadcast packets is covered for now. - Defines few RSS flow algorithms for HW to distribute packets. This is not the hash algorithsm (i.e toeplitz or crc32), here SW defines what fields in packet should HW take and calculate the hash. - Support for PF/VF to configure VTAG strip and capture capabilities. - Reset NIXLF statastics. NPC block: This block has multiple parser engines which support packet parsing at multiple layers and generates a parse result which is further used to generate a key. Based on packet field offsets in the key, SW can install packet forwarding rules. This patch series adds - Initial parser profile to be programmed into parser engines. - Default forwarding rules to forward packets to different logical interfaces having a NIXLF attached. - Support for promiscuous and multicast modes. Geetha sowjanya (1): octeontx2-af: Config pkind for CGX mapped PFs Hao Zheng (1): octeontx2-af: Add NPC KPU profile Stanislaw Kardach (1): octeontx2-af: Add LMAC channel info to NIXLF_ALLOC response Sunil Goutham (12): octeontx2-af: NIX Tx scheduler queues alloc/free octeontx2-af: NIX Tx scheduler queue config support octeontx2-af: Config NPC KPU engines with parser profile octeontx2-af: Broadcast packet replication support octeontx2-af: Update bcast list upon NIXLF alloc/free octeontx2-af: Enable packet length and csum validation octeontx2-af: NPC MCAM and LDATA extract minimal configuration octeontx2-af: Install ucast and bcast pkt forwarding rules octeontx2-af: NIX Rx flowkey configuration for RSS octeontx2-af: Support for changing RSS algorithm octeontx2-af: Support for setting MAC address octeontx2-af: Support for NIXLF's UCAST/PROMISC/ALLMULTI modes Vamsi Attunuru (2): octeontx2-af: Reset NIXLF's Rx/Tx stats octeontx2-af: Support for VTAG strip and capture drivers/net/ethernet/marvell/octeontx2/af/Makefile | 3 +- drivers/net/ethernet/marvell/octeontx2/af/cgx.c | 12 + drivers/net/ethernet/marvell/octeontx2/af/cgx.h | 1 + drivers/net/ethernet/marvell/octeontx2/af/common.h | 50 + drivers/net/ethernet/marvell/octeontx2/af/mbox.h | 110 +- drivers/net/ethernet/marvell/octeontx2/af/npc.h | 262 + .../ethernet/marvell/octeontx2/af/npc_profile.h | 5709 ++++++++++++++++++++ drivers/net/ethernet/marvell/octeontx2/af/rvu.c | 12 +- drivers/net/ethernet/marvell/octeontx2/af/rvu.h | 97 +- .../net/ethernet/marvell/octeontx2/af/rvu_cgx.c | 7 +- .../net/ethernet/marvell/octeontx2/af/rvu_nix.c | 1067 ++++ .../net/ethernet/marvell/octeontx2/af/rvu_npc.c | 812 +++ .../net/ethernet/marvell/octeontx2/af/rvu_reg.c | 71 + .../net/ethernet/marvell/octeontx2/af/rvu_reg.h | 61 + .../net/ethernet/marvell/octeontx2/af/rvu_struct.h | 35 + 15 files changed, 8302 insertions(+), 7 deletions(-) create mode 100644 drivers/net/ethernet/marvell/octeontx2/af/npc.h create mode 100644 drivers/net/ethernet/marvell/octeontx2/af/npc_profile.h create mode 100644 drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.c create mode 100644 drivers/net/ethernet/marvell/octeontx2/af/rvu_reg.c -- 2.7.4