RE: [EXTERNAL] Re: [net-next PATCH v2 0/9] Introduce RVU representors

From: Geethasowjanya Akula
Date: Thu Apr 25 2024 - 01:09:28 EST




> -----Original Message-----
> From: Jiri Pirko <jiri@xxxxxxxxxxx>
> Sent: Wednesday, April 24, 2024 8:12 PM
> To: Geethasowjanya Akula <gakula@xxxxxxxxxxx>
> Cc: netdev@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; kuba@xxxxxxxxxx;
> davem@xxxxxxxxxxxxx; pabeni@xxxxxxxxxx; edumazet@xxxxxxxxxx; Sunil
> Kovvuri Goutham <sgoutham@xxxxxxxxxxx>; Subbaraya Sundeep Bhatta
> <sbhatta@xxxxxxxxxxx>; Hariprasad Kelam <hkelam@xxxxxxxxxxx>
> Subject: Re: [EXTERNAL] Re: [net-next PATCH v2 0/9] Introduce RVU
> representors
>
> Tue, Apr 23, 2024 at 05:39:15PM CEST, gakula@xxxxxxxxxxx wrote:
> >
> >
> >> -----Original Message-----
> >> From: Jiri Pirko <jiri@xxxxxxxxxxx>
> >> Sent: Tuesday, April 23, 2024 6:33 PM
> >> To: Geethasowjanya Akula <gakula@xxxxxxxxxxx>
> >> Cc: netdev@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> >> kuba@xxxxxxxxxx; davem@xxxxxxxxxxxxx; pabeni@xxxxxxxxxx;
> >> edumazet@xxxxxxxxxx; Sunil Kovvuri Goutham
> <sgoutham@xxxxxxxxxxx>;
> >> Subbaraya Sundeep Bhatta <sbhatta@xxxxxxxxxxx>; Hariprasad Kelam
> >> <hkelam@xxxxxxxxxxx>
> >> Subject: [EXTERNAL] Re: [net-next PATCH v2 0/9] Introduce RVU
> >> representors
> >> ---------------------------------------------------------------------
> >> - Mon, Apr 22, 2024 at 11:53:52AM CEST, gakula@xxxxxxxxxxx wrote:
> >> >This series adds representor support for each rvu devices.
> >> >When switchdev mode is enabled, representor netdev is registered for
> >> >each rvu device. In implementation of representor model, one NIX HW
> >> >LF with multiple SQ and RQ is reserved, where each RQ and SQ of the
> >> >LF are mapped to a representor. A loopback channel is reserved to
> >> >support packet path between representors and VFs.
> >> >CN10K silicon supports 2 types of MACs, RPM and SDP. This patch set
> >> >adds representor support for both RPM and SDP MAC interfaces.
> >> >
> >> >- Patch 1: Refactors and exports the shared service functions.
> >> >- Patch 2: Implements basic representor driver.
> >> >- Patch 3: Add devlink support to create representor netdevs that
> >> > can be used to manage VFs.
> >> >- Patch 4: Implements basec netdev_ndo_ops.
> >> >- Patch 5: Installs tcam rules to route packets between representor and
> >> > VFs.
> >> >- Patch 6: Enables fetching VF stats via representor interface.
> >> >- Patch 7: Adds support to sync link state between representors and VFs.
> >> >- Patch 8: Enables configuring VF MTU via representor netdevs.
> >> >- Patch 9: Add representors for sdp MAC.
> >>
> >>
> >> Could you please add some command outputs to the cover letter? Like $
> >> devlink dev $ devlink port
> >>
> >#devlink dev eswitch set pci/0002:1c:00.0 mode switchdev
VF representors are created for each VF when switch mode is set switchdev on representor PCI device
# devlink dev eswitch set pci/0002:1c:00.0 mode switchdev
# ip link show
25: r0p1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 32:0f:0f:f0:60:f1 brd ff:ff:ff:ff:ff:ff
26: r1p1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
link/ether 3e:5d:9a:4d:e7:7b brd ff:ff:ff:ff:ff:ff

Sorry if I was not clear before. Hope these answers you question.

>
> ?
>
> >> outputs at least.
> >>
> >>
> >> >
> >> >-----------
> >> >v1-v2:
> >> > -Fixed build warnings.
> >> > -Address review comments provided by "Kalesh Anakkur Purayil".
> >> >
> >> >Geetha sowjanya (9):
> >> > octeontx2-pf: Refactoring RVU driver
> >> > octeontx2-pf: RVU representor driver
> >> > octeontx2-pf: Create representor netdev
> >> > octeontx2-pf: Add basic net_device_ops
> >> > octeontx2-af: Add packet path between representor and VF
> >> > octeontx2-pf: Get VF stats via representor
> >> > octeontx2-pf: Add support to sync link state between representor and
> >> > VFs
> >> > octeontx2-pf: Configure VF mtu via representor
> >> > octeontx2-pf: Add representors for sdp MAC
> >> >
> >> > .../net/ethernet/marvell/octeontx2/Kconfig | 8 +
> >> > .../ethernet/marvell/octeontx2/af/Makefile | 3 +-
> >> > .../ethernet/marvell/octeontx2/af/common.h | 2 +
> >> > .../net/ethernet/marvell/octeontx2/af/mbox.h | 73 +++
> >> > .../net/ethernet/marvell/octeontx2/af/npc.h | 1 +
> >> > .../net/ethernet/marvell/octeontx2/af/rvu.h | 30 +-
> >> > .../marvell/octeontx2/af/rvu_debugfs.c | 27 -
> >> > .../marvell/octeontx2/af/rvu_devlink.c | 6 +
> >> > .../ethernet/marvell/octeontx2/af/rvu_nix.c | 75 ++-
> >> > .../marvell/octeontx2/af/rvu_npc_fs.c | 4 +
> >> > .../ethernet/marvell/octeontx2/af/rvu_rep.c | 457 ++++++++++++++
> >> > .../marvell/octeontx2/af/rvu_struct.h | 26 +
> >> > .../marvell/octeontx2/af/rvu_switch.c | 20 +-
> >> > .../ethernet/marvell/octeontx2/nic/Makefile | 2 +
> >> > .../ethernet/marvell/octeontx2/nic/cn10k.c | 4 +-
> >> > .../ethernet/marvell/octeontx2/nic/cn10k.h | 2 +-
> >> > .../marvell/octeontx2/nic/otx2_common.c | 53 +-
> >> > .../marvell/octeontx2/nic/otx2_common.h | 83 ++-
> >> > .../marvell/octeontx2/nic/otx2_devlink.c | 47 ++
> >> > .../ethernet/marvell/octeontx2/nic/otx2_pf.c | 305 ++++++---
> >> > .../ethernet/marvell/octeontx2/nic/otx2_reg.h | 1 +
> >> > .../marvell/octeontx2/nic/otx2_txrx.c | 35 +-
> >> > .../marvell/octeontx2/nic/otx2_txrx.h | 3 +-
> >> > .../ethernet/marvell/octeontx2/nic/otx2_vf.c | 18 +-
> >> > .../net/ethernet/marvell/octeontx2/nic/rep.c | 596
> >> > ++++++++++++++++++ .../net/ethernet/marvell/octeontx2/nic/rep.h |
> >> > 51 ++
> >> > 26 files changed, 1707 insertions(+), 225 deletions(-) create mode
> >> > 100644 drivers/net/ethernet/marvell/octeontx2/af/rvu_rep.c
> >> > create mode 100644 drivers/net/ethernet/marvell/octeontx2/nic/rep.c
> >> > create mode 100644 drivers/net/ethernet/marvell/octeontx2/nic/rep.h
> >> >
> >> >--
> >> >2.25.1
> >> >
> >> >