[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1664600389-5758-1-git-send-email-sbhatta@marvell.com>
Date: Sat, 1 Oct 2022 10:29:41 +0530
From: Subbaraya Sundeep <sbhatta@...vell.com>
To: <davem@...emloft.net>, <kuba@...nel.org>, <edumazet@...gle.com>,
<pabeni@...hat.com>, <netdev@...r.kernel.org>
CC: <sgoutham@...vell.com>, <naveenm@...vell.com>,
Subbaraya Sundeep <sbhatta@...vell.com>
Subject: [net-next PATCH v3 0/8] Introduce macsec hardware offload for cn10k platform
CN10K-B and CNF10K-B variaints of CN10K silicon has macsec block(MCS)
to encrypt and decrypt packets at MAC/hardware level. This block is a
global resource with hardware resources like SecYs, SCs and SAs
and is in between NIX block and RPM LMAC. CN10K-B silicon has only
one MCS block which receives packets from all LMACS whereas
CNF10K-B has seven MCS blocks for seven LMACs. Both MCS blocks are
similar in operation except for few register offsets and some
configurations require writing to different registers. This patchset
introduces macsec hardware offloading support. AF driver manages hardware
resources and PF driver consumes them when macsec hardware offloading
is needed.
Patch 1 adds basic pci driver for both CN10K-B and CNF10K-B
silicons and initializes hardware block.
Patches 2 and 3 adds mailboxes to init, reset and manage
resources of the MCS block
Patch 4 adds a low priority rule in MCS TCAM so that the
traffic which do not need macsec processing can be sent/received
Patch 5 adds macsec stats collection support
Patch 6 adds interrupt handling support and any event in which
AF consumer is interested can be notified via mbox notification
Patch 7 adds debugfs support which helps in debugging packet
path
Patch 8 introduces macsec hardware offload feature for
PF netdev driver.
v3 changes:
Fixed clang and sparse warnings
v2 changes:
Fix build error by changing #ifdef CONFIG_MACSEC to
#if IS_ENABLED(CONFIG_MACSEC)
Thanks,
Sundeep
Geetha sowjanya (7):
octeontx2-af: cn10k: Introduce driver for macsec block.
octeontx2-af: cn10k: mcs: Add mailboxes for port related operations
octeontx2-af: cn10k: mcs: Manage the MCS block hardware resources
octeontx2-af: cn10k: mcs: Install a default TCAM for normal traffic
octeontx2-af: cn10k: mcs: Support for stats collection
octeontx2-af: cn10k: mcs: Handle MCS block interrupts
octeontx2-af: cn10k: mcs: Add debugfs support
Subbaraya Sundeep (1):
octeontx2-pf: mcs: Introduce MACSEC hardware offloading
drivers/net/ethernet/marvell/octeontx2/af/Makefile | 2 +-
drivers/net/ethernet/marvell/octeontx2/af/mbox.h | 471 +++++-
drivers/net/ethernet/marvell/octeontx2/af/mcs.c | 1601 +++++++++++++++++++
drivers/net/ethernet/marvell/octeontx2/af/mcs.h | 246 +++
.../ethernet/marvell/octeontx2/af/mcs_cnf10kb.c | 214 +++
.../net/ethernet/marvell/octeontx2/af/mcs_reg.h | 1102 +++++++++++++
.../net/ethernet/marvell/octeontx2/af/mcs_rvu_if.c | 889 +++++++++++
drivers/net/ethernet/marvell/octeontx2/af/rvu.c | 20 +-
drivers/net/ethernet/marvell/octeontx2/af/rvu.h | 21 +
.../ethernet/marvell/octeontx2/af/rvu_debugfs.c | 346 ++++
.../net/ethernet/marvell/octeontx2/nic/Makefile | 1 +
.../ethernet/marvell/octeontx2/nic/cn10k_macsec.c | 1668 ++++++++++++++++++++
.../ethernet/marvell/octeontx2/nic/otx2_common.c | 1 +
.../ethernet/marvell/octeontx2/nic/otx2_common.h | 90 ++
.../net/ethernet/marvell/octeontx2/nic/otx2_pf.c | 16 +
15 files changed, 6681 insertions(+), 7 deletions(-)
create mode 100644 drivers/net/ethernet/marvell/octeontx2/af/mcs.c
create mode 100644 drivers/net/ethernet/marvell/octeontx2/af/mcs.h
create mode 100644 drivers/net/ethernet/marvell/octeontx2/af/mcs_cnf10kb.c
create mode 100644 drivers/net/ethernet/marvell/octeontx2/af/mcs_reg.h
create mode 100644 drivers/net/ethernet/marvell/octeontx2/af/mcs_rvu_if.c
create mode 100644 drivers/net/ethernet/marvell/octeontx2/nic/cn10k_macsec.c
--
2.7.4
Powered by blists - more mailing lists