From: Sunil Goutham <sgoutham@xxxxxxxxxxx> This patchset is a continuation to earlier submitted three 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 3. octeontx2-af: NPC parser and NIX blocks initialization https://www.spinics.net/lists/netdev/msg530252.html This patch series adds support for below RVU generic: - Function Level Reset irq handler When FLR is triggered for PFs, AF receives interrupt. This patchset adds logic for cleaning up of NPA, NIX and NPC block resources being used by PF. - Mailbox communication between AF and it's VFs. Unlike VFs of PF1-PFn, AF which is PF0 can communicate with it's VFs directly. Added support for the same. - AF's VFs IO configuration These VFs are mapped to use internal HW loopback channels instead of CGX LMACs. Each pair of VFs work as two of ends of hardwired interfaces. VF0's TX is VF1's Rx & viceversa. NPC block: - MCAM entry management Alloc/Free of contiguous/non-contiguous and lower/higher priority MCAM entry allocation and programming support. - MCAM counters management and map/unmap with MCAM entries - Default KEY extract profile - HW errata workarounds NIX block: - Minimum and maximum allowed packet length config - HW errata workarounds Few more changes like shift to use mutex instead of spinlock etc are done in this patchset. Changes from v2: 1 Fixed commit message of patch 'Relax resource lock into mutex' to a more unambiguous one. - Suggested by David Miller. Changes from v1: 1 Converted all mailbox message handler API names to small letters from mixed small and capital letters. - Suggested by David Miller. 2 Fixed endian issues in patch 'Add support for stripping STAG/CTAG' - Suggested by Arnd Bergmann 3 Elaborated commit message of patch 'Add FLR interrupt handler' to make it a bit more easy to understand. - Suggested by Arnd Bergmann Will fix the padding and alignment in mailbox message structure in a follow-up patch. Geetha sowjanya (2): octeontx2-af: Add FLR interrupt handler octeontx2-af: Teardown NPA, NIX LF upon receiving FLR Kiran Kumar (1): octeontx2-af: Support to get NIX HW constants from AF Linu Cherian (1): octeontx2-af: Add interrupt handlers for Master Enable event Santosh Shukla (1): octeontx2-af: Add MKEX default profile Stanislaw Kardach (1): octeontx2-af: Relax resource lock into mutex Sunil Goutham (11): octeontx2-af: Convert mbox handlers APIs to lowercase octeontx2-af: Support to modify min/max allowed packet lengths octeontx2-af: NPC MCAM entry alloc/free support octeontx2-af: MCAM entry installation support octeontx2-af: Support for NPC MCAM counters octeontx2-af: Map or unmap NPC MCAM entry and counter octeontx2-af: Alloc and config NPC MCAM entry at a time octeontx2-af: Support to enable/disable default MCAM entries octeontx2-af: Verify NPA/SSO/NIX PF_FUNC mapping octeontx2-af: Add FLR handling support for AF's VFs octeontx2-af: Workarounds for HW errata Tomasz Duszynski (4): octeontx2-af: Add support for stripping STAG/CTAG octeontx2-af: Mbox communication support btw AF and it's VFs octeontx2-af: Enable sriov on AF to create VFs octeontx2-af: Configure AF VFs to talk over LBK channels drivers/net/ethernet/marvell/octeontx2/af/cgx.h | 1 + drivers/net/ethernet/marvell/octeontx2/af/common.h | 7 + drivers/net/ethernet/marvell/octeontx2/af/mbox.c | 2 +- drivers/net/ethernet/marvell/octeontx2/af/mbox.h | 280 +++- drivers/net/ethernet/marvell/octeontx2/af/npc.h | 6 + drivers/net/ethernet/marvell/octeontx2/af/rvu.c | 953 ++++++++++++-- drivers/net/ethernet/marvell/octeontx2/af/rvu.h | 174 ++- .../net/ethernet/marvell/octeontx2/af/rvu_cgx.c | 36 +- .../net/ethernet/marvell/octeontx2/af/rvu_nix.c | 519 +++++++- .../net/ethernet/marvell/octeontx2/af/rvu_npa.c | 25 +- .../net/ethernet/marvell/octeontx2/af/rvu_npc.c | 1383 +++++++++++++++++++- 11 files changed, 3064 insertions(+), 322 deletions(-) -- 2.7.4