Message ID | 20240422095401.14245-1-gakula@marvell.com (mailing list archive) |
---|---|
Headers | show |
Series | Introduce RVU representors | expand |
Mon, Apr 22, 2024 at 11:53:52AM CEST, gakula@marvell.com 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 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 > >
Mon, Apr 22, 2024 at 11:53:52AM CEST, gakula@marvell.com 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. You are missing devlink port created for each representor. Please check mlx5 for example for the implementation. git grep DEVLINK_PORT_FLAVOUR_PCI_VF
> -----Original Message----- > From: Jiri Pirko <jiri@resnulli.us> > Sent: Tuesday, April 23, 2024 6:33 PM > To: Geethasowjanya Akula <gakula@marvell.com> > Cc: netdev@vger.kernel.org; linux-kernel@vger.kernel.org; kuba@kernel.org; > davem@davemloft.net; pabeni@redhat.com; edumazet@google.com; Sunil > Kovvuri Goutham <sgoutham@marvell.com>; Subbaraya Sundeep Bhatta > <sbhatta@marvell.com>; Hariprasad Kelam <hkelam@marvell.com> > Subject: [EXTERNAL] Re: [net-next PATCH v2 0/9] Introduce RVU representors > > Prioritize security for external emails: Confirm sender and content safety > before clicking links or opening attachments > > ---------------------------------------------------------------------- > Mon, Apr 22, 2024 at 11:53:52AM CEST, gakula@marvell.com 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 > 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 > > > >
Tue, Apr 23, 2024 at 05:39:15PM CEST, gakula@marvell.com wrote: > > >> -----Original Message----- >> From: Jiri Pirko <jiri@resnulli.us> >> Sent: Tuesday, April 23, 2024 6:33 PM >> To: Geethasowjanya Akula <gakula@marvell.com> >> Cc: netdev@vger.kernel.org; linux-kernel@vger.kernel.org; kuba@kernel.org; >> davem@davemloft.net; pabeni@redhat.com; edumazet@google.com; Sunil >> Kovvuri Goutham <sgoutham@marvell.com>; Subbaraya Sundeep Bhatta >> <sbhatta@marvell.com>; Hariprasad Kelam <hkelam@marvell.com> >> Subject: [EXTERNAL] Re: [net-next PATCH v2 0/9] Introduce RVU representors >> >> Prioritize security for external emails: Confirm sender and content safety >> before clicking links or opening attachments >> >> ---------------------------------------------------------------------- >> Mon, Apr 22, 2024 at 11:53:52AM CEST, gakula@marvell.com 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 ? >> 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 >> > >> >
> -----Original Message----- > From: Jiri Pirko <jiri@resnulli.us> > Sent: Wednesday, April 24, 2024 8:12 PM > To: Geethasowjanya Akula <gakula@marvell.com> > Cc: netdev@vger.kernel.org; linux-kernel@vger.kernel.org; kuba@kernel.org; > davem@davemloft.net; pabeni@redhat.com; edumazet@google.com; Sunil > Kovvuri Goutham <sgoutham@marvell.com>; Subbaraya Sundeep Bhatta > <sbhatta@marvell.com>; Hariprasad Kelam <hkelam@marvell.com> > Subject: Re: [EXTERNAL] Re: [net-next PATCH v2 0/9] Introduce RVU > representors > > Tue, Apr 23, 2024 at 05:39:15PM CEST, gakula@marvell.com wrote: > > > > > >> -----Original Message----- > >> From: Jiri Pirko <jiri@resnulli.us> > >> Sent: Tuesday, April 23, 2024 6:33 PM > >> To: Geethasowjanya Akula <gakula@marvell.com> > >> Cc: netdev@vger.kernel.org; linux-kernel@vger.kernel.org; > >> kuba@kernel.org; davem@davemloft.net; pabeni@redhat.com; > >> edumazet@google.com; Sunil Kovvuri Goutham > <sgoutham@marvell.com>; > >> Subbaraya Sundeep Bhatta <sbhatta@marvell.com>; Hariprasad Kelam > >> <hkelam@marvell.com> > >> Subject: [EXTERNAL] Re: [net-next PATCH v2 0/9] Introduce RVU > >> representors > >> --------------------------------------------------------------------- > >> - Mon, Apr 22, 2024 at 11:53:52AM CEST, gakula@marvell.com 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 > >> > > >> >
Thu, Apr 25, 2024 at 07:09:01AM CEST, gakula@marvell.com wrote: > > >> -----Original Message----- >> From: Jiri Pirko <jiri@resnulli.us> >> Sent: Wednesday, April 24, 2024 8:12 PM >> To: Geethasowjanya Akula <gakula@marvell.com> >> Cc: netdev@vger.kernel.org; linux-kernel@vger.kernel.org; kuba@kernel.org; >> davem@davemloft.net; pabeni@redhat.com; edumazet@google.com; Sunil >> Kovvuri Goutham <sgoutham@marvell.com>; Subbaraya Sundeep Bhatta >> <sbhatta@marvell.com>; Hariprasad Kelam <hkelam@marvell.com> >> Subject: Re: [EXTERNAL] Re: [net-next PATCH v2 0/9] Introduce RVU >> representors >> >> Tue, Apr 23, 2024 at 05:39:15PM CEST, gakula@marvell.com wrote: >> > >> > >> >> -----Original Message----- >> >> From: Jiri Pirko <jiri@resnulli.us> >> >> Sent: Tuesday, April 23, 2024 6:33 PM >> >> To: Geethasowjanya Akula <gakula@marvell.com> >> >> Cc: netdev@vger.kernel.org; linux-kernel@vger.kernel.org; >> >> kuba@kernel.org; davem@davemloft.net; pabeni@redhat.com; >> >> edumazet@google.com; Sunil Kovvuri Goutham >> <sgoutham@marvell.com>; >> >> Subbaraya Sundeep Bhatta <sbhatta@marvell.com>; Hariprasad Kelam >> >> <hkelam@marvell.com> >> >> Subject: [EXTERNAL] Re: [net-next PATCH v2 0/9] Introduce RVU >> >> representors >> >> --------------------------------------------------------------------- >> >> - Mon, Apr 22, 2024 at 11:53:52AM CEST, gakula@marvell.com 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. Again, please add outputs of: devlink dev devlink port I'm not sure why this was not clear the first time I wrote it. > >> >> ? >> >> >> 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 >> >> > >> >> >
> -----Original Message----- > From: Jiri Pirko <jiri@resnulli.us> > Sent: Thursday, April 25, 2024 12:31 PM > To: Geethasowjanya Akula <gakula@marvell.com> > Cc: netdev@vger.kernel.org; linux-kernel@vger.kernel.org; kuba@kernel.org; > davem@davemloft.net; pabeni@redhat.com; edumazet@google.com; Sunil > Kovvuri Goutham <sgoutham@marvell.com>; Subbaraya Sundeep Bhatta > <sbhatta@marvell.com>; Hariprasad Kelam <hkelam@marvell.com> > Subject: Re: [EXTERNAL] Re: [net-next PATCH v2 0/9] Introduce RVU > representors > > Thu, Apr 25, 2024 at 07:09:01AM CEST, gakula@marvell.com wrote: > > > > > >> -----Original Message----- > >> From: Jiri Pirko <jiri@resnulli.us> > >> Sent: Wednesday, April 24, 2024 8:12 PM > >> To: Geethasowjanya Akula <gakula@marvell.com> > >> Cc: netdev@vger.kernel.org; linux-kernel@vger.kernel.org; > >> kuba@kernel.org; davem@davemloft.net; pabeni@redhat.com; > >> edumazet@google.com; Sunil Kovvuri Goutham > <sgoutham@marvell.com>; > >> Subbaraya Sundeep Bhatta <sbhatta@marvell.com>; Hariprasad Kelam > >> <hkelam@marvell.com> > >> Subject: Re: [EXTERNAL] Re: [net-next PATCH v2 0/9] Introduce RVU > >> representors > >> > >> Tue, Apr 23, 2024 at 05:39:15PM CEST, gakula@marvell.com wrote: > >> > > >> > > >> >> -----Original Message----- > >> >> From: Jiri Pirko <jiri@resnulli.us> > >> >> Sent: Tuesday, April 23, 2024 6:33 PM > >> >> To: Geethasowjanya Akula <gakula@marvell.com> > >> >> Cc: netdev@vger.kernel.org; linux-kernel@vger.kernel.org; > >> >> kuba@kernel.org; davem@davemloft.net; pabeni@redhat.com; > >> >> edumazet@google.com; Sunil Kovvuri Goutham > >> <sgoutham@marvell.com>; > >> >> Subbaraya Sundeep Bhatta <sbhatta@marvell.com>; Hariprasad Kelam > >> >> <hkelam@marvell.com> > >> >> Subject: [EXTERNAL] Re: [net-next PATCH v2 0/9] Introduce RVU > >> >> representors > >> >> ------------------------------------------------------------------ > >> >> --- > >> >> - Mon, Apr 22, 2024 at 11:53:52AM CEST, gakula@marvell.com 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. > > > Again, please add outputs of: > devlink dev > devlink port ~# devlink dev pci/0002:01:00.0 pci/0002:02:00.0 pci/0002:03:00.0 pci/0002:04:00.0 pci/0002:05:00.0 pci/0002:06:00.0 pci/0002:07:00.0 pci/0002:1c:00.0 pci/0002:01:00.1 pci/0002:01:00.2 pci/0002:01:00.3 pci/0002:01:00.4 pci/0002:01:00.5 pci/0002:01:00.6 pci/0002:01:00.7 pci/0002:01:01.0 pci/0002:01:01.1 pci/0002:01:01.2 pci/0002:01:01.3 pci/0002:01:01.4 pci/0002:01:01.5 pci/0002:01:01.6 pci/0002:01:01.7 pci/0002:01:02.0 > > I'm not sure why this was not clear the first time I wrote it. > > > > >> > >> ? > >> > >> >> 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 > >> >> > > >> >> >