]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commit
octeontx2-af: Optimize KPU1 processing for variable-length headers
authorKiran Kumar K <kirankumark@marvell.com>
Fri, 24 Sep 2021 06:18:51 +0000 (11:48 +0530)
committerPaolo Pisati <paolo.pisati@canonical.com>
Wed, 9 Mar 2022 14:17:49 +0000 (15:17 +0100)
commit58aeaf230214b3a58cf4c9cb3e09ec652c6a746f
treec409806795f438d2f71b0ae2eef5e07253845ae4
parent5c63400cac632a1d3dac2eb2e49376e8e8bac645
octeontx2-af: Optimize KPU1 processing for variable-length headers

BugLink: https://bugs.launchpad.net/bugs/1964361
[ Upstream commit edadeb38dc2fa2550801995b748110c3e5e59557 ]

Optimized KPU1 entry processing for variable-length custom L2 headers
of size 24B, 90B by
- Moving LA LTYPE parsing for 24B and 90B headers to PKIND.
- Removing LA flags assignment for 24B and 90B headers.
- Reserving a PKIND 55 to parse variable length headers.

Also, new mailbox(NPC_SET_PKIND) added to configure PKIND with
corresponding variable-length offset, mask, and shift count
(NPC_AF_KPUX_ENTRYX_ACTION0).

Signed-off-by: Kiran Kumar K <kirankumark@marvell.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
drivers/net/ethernet/marvell/octeontx2/af/mbox.h
drivers/net/ethernet/marvell/octeontx2/af/npc.h
drivers/net/ethernet/marvell/octeontx2/af/npc_profile.h
drivers/net/ethernet/marvell/octeontx2/af/rvu.h
drivers/net/ethernet/marvell/octeontx2/af/rvu_cgx.c
drivers/net/ethernet/marvell/octeontx2/af/rvu_nix.c
drivers/net/ethernet/marvell/octeontx2/af/rvu_npc.c