[net-next PATCH 0/6] Add ingress ratelimit offload
From: Subbaraya Sundeep <sbhatta@marvell.com>
Date: 2021-06-15 11:36:47
This patchset adds ingress rate limiting hardware offload support for CN10K silicons. Police actions are added for TC matchall and flower filters. CN10K has ingress rate limiting feature where a receive queue is mapped to bandwidth profile and the profile is configured with rate and burst parameters by software. CN10K hardware supports three levels of ingress policing or ratelimiting. Multiple leaf profiles can point to a single mid level profile and multiple mid level profile can point to a single top level one. Only leaf level profiles are used for configuring rate limiting. Patch 1 adds the new bandwidth profile contexts in AF driver similar to other hardware contexts Patch 2 adds the debugfs changes to dump bandwidth profile contexts Patch 3 adds support for police action with TC matchall filter Patch 4 uses NL_SET_ERR_MSG_MOD for tc code Patch 5 adds support for police action with TC flower filter Subbaraya Sundeep (2): octeontx2-pf: Use NL_SET_ERR_MSG_MOD for TC octeontx2-pf: Add police action for TC flower Sunil Goutham (3): octeontx2-af: cn10k: Bandwidth profiles config support octeontx2-af: cn10k: Debugfs support for bandwidth profiles octeontx2-pf: TC_MATCHALL ingress ratelimiting offload drivers/net/ethernet/marvell/octeontx2/af/mbox.h | 40 +- drivers/net/ethernet/marvell/octeontx2/af/rvu.c | 8 + drivers/net/ethernet/marvell/octeontx2/af/rvu.h | 16 + .../ethernet/marvell/octeontx2/af/rvu_debugfs.c | 163 ++++++ .../net/ethernet/marvell/octeontx2/af/rvu_nix.c | 619 ++++++++++++++++++++- .../net/ethernet/marvell/octeontx2/af/rvu_npc_fs.c | 5 + .../net/ethernet/marvell/octeontx2/af/rvu_reg.h | 8 + .../net/ethernet/marvell/octeontx2/af/rvu_struct.h | 85 ++- drivers/net/ethernet/marvell/octeontx2/nic/cn10k.c | 323 +++++++++++ drivers/net/ethernet/marvell/octeontx2/nic/cn10k.h | 11 + .../ethernet/marvell/octeontx2/nic/otx2_common.h | 3 + .../ethernet/marvell/octeontx2/nic/otx2_ethtool.c | 6 + .../net/ethernet/marvell/octeontx2/nic/otx2_pf.c | 3 + .../net/ethernet/marvell/octeontx2/nic/otx2_tc.c | 299 ++++++++-- 14 files changed, 1554 insertions(+), 35 deletions(-) -- 2.7.4