[v4,0/6] OCTEON TX2 End Point Driver
mbox series

Message ID 1578406988-29379-1-git-send-email-mchalla@marvell.com
Headers show
Series
  • OCTEON TX2 End Point Driver
Related show

Message

Mahipal Challa Jan. 7, 2020, 2:23 p.m. UTC
This patchset adds support for OCTEON TX2 end point mode of operation.
The driver implementation uses DPDK rawdevice sub-system.

v2:
* Updated memory barrior API's as per Gavin Hu suggestion.

v3:
* Fixed memory leak possibility issues.

v4:
* Improved error handling in selftest API.

Mahipal Challa (6):
  raw/octeontx2_ep: add build infra and device probe
  raw/octeontx2_ep: add device configuration
  raw/octeontx2_ep: add device uninitialization
  raw/octeontx2_ep: add enqueue operation
  raw/octeontx2_ep: add dequeue operation
  raw/octeontx2_ep: add driver self test

 MAINTAINERS                                        |   5 +
 config/common_base                                 |   5 +
 doc/guides/rawdevs/index.rst                       |   1 +
 doc/guides/rawdevs/octeontx2_ep.rst                |  89 +++
 drivers/common/octeontx2/hw/otx2_sdp.h             | 184 +++++
 drivers/common/octeontx2/otx2_common.c             |   9 +
 drivers/common/octeontx2/otx2_common.h             |   4 +
 .../octeontx2/rte_common_octeontx2_version.map     |   6 +
 drivers/raw/Makefile                               |   1 +
 drivers/raw/meson.build                            |   1 +
 drivers/raw/octeontx2_ep/Makefile                  |  44 ++
 drivers/raw/octeontx2_ep/meson.build               |   9 +
 drivers/raw/octeontx2_ep/otx2_ep_enqdeq.c          | 844 +++++++++++++++++++++
 drivers/raw/octeontx2_ep/otx2_ep_enqdeq.h          |  52 ++
 drivers/raw/octeontx2_ep/otx2_ep_rawdev.c          | 361 +++++++++
 drivers/raw/octeontx2_ep/otx2_ep_rawdev.h          | 499 ++++++++++++
 drivers/raw/octeontx2_ep/otx2_ep_test.c            | 173 +++++
 drivers/raw/octeontx2_ep/otx2_ep_vf.c              | 476 ++++++++++++
 drivers/raw/octeontx2_ep/otx2_ep_vf.h              |  10 +
 .../rte_rawdev_octeontx2_ep_version.map            |   4 +
 mk/rte.app.mk                                      |   2 +
 21 files changed, 2779 insertions(+)
 create mode 100644 doc/guides/rawdevs/octeontx2_ep.rst
 create mode 100644 drivers/common/octeontx2/hw/otx2_sdp.h
 create mode 100644 drivers/raw/octeontx2_ep/Makefile
 create mode 100644 drivers/raw/octeontx2_ep/meson.build
 create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_enqdeq.c
 create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_enqdeq.h
 create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_rawdev.c
 create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_rawdev.h
 create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_test.c
 create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_vf.c
 create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_vf.h
 create mode 100644 drivers/raw/octeontx2_ep/rte_rawdev_octeontx2_ep_version.map

Comments

Mahipal Challa Jan. 8, 2020, 7:31 a.m. UTC | #1
Hi Gavin,
We have incorporated the changes you suggested in v3, please ack.
We like to take up performance improvement optimizations later( that you suggested in v3) and upstream in the future, so for this release 20.02 we like to go with the existing patch set sources(v4), please ack.

Thanks,
Mahipal

> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Mahipal Challa
> Sent: Tuesday, January 7, 2020 7:53 PM
> To: dev@dpdk.org
> Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>; Narayana Prasad Raju
> Athreya <pathreya@marvell.com>; Subrahmanyam Nilla
> <snilla@marvell.com>; Venkateshwarlu Nalla <venkatn@marvell.com>;
> Gavin.Hu@arm.com
> Subject: [dpdk-dev] [PATCH v4 0/6] OCTEON TX2 End Point Driver
> 
> This patchset adds support for OCTEON TX2 end point mode of operation.
> The driver implementation uses DPDK rawdevice sub-system.
> 
> v2:
> * Updated memory barrior API's as per Gavin Hu suggestion.
> 
> v3:
> * Fixed memory leak possibility issues.
> 
> v4:
> * Improved error handling in selftest API.
> 
> Mahipal Challa (6):
>   raw/octeontx2_ep: add build infra and device probe
>   raw/octeontx2_ep: add device configuration
>   raw/octeontx2_ep: add device uninitialization
>   raw/octeontx2_ep: add enqueue operation
>   raw/octeontx2_ep: add dequeue operation
>   raw/octeontx2_ep: add driver self test
> 
>  MAINTAINERS                                        |   5 +
>  config/common_base                                 |   5 +
>  doc/guides/rawdevs/index.rst                       |   1 +
>  doc/guides/rawdevs/octeontx2_ep.rst                |  89 +++
>  drivers/common/octeontx2/hw/otx2_sdp.h             | 184 +++++
>  drivers/common/octeontx2/otx2_common.c             |   9 +
>  drivers/common/octeontx2/otx2_common.h             |   4 +
>  .../octeontx2/rte_common_octeontx2_version.map     |   6 +
>  drivers/raw/Makefile                               |   1 +
>  drivers/raw/meson.build                            |   1 +
>  drivers/raw/octeontx2_ep/Makefile                  |  44 ++
>  drivers/raw/octeontx2_ep/meson.build               |   9 +
>  drivers/raw/octeontx2_ep/otx2_ep_enqdeq.c          | 844
> +++++++++++++++++++++
>  drivers/raw/octeontx2_ep/otx2_ep_enqdeq.h          |  52 ++
>  drivers/raw/octeontx2_ep/otx2_ep_rawdev.c          | 361 +++++++++
>  drivers/raw/octeontx2_ep/otx2_ep_rawdev.h          | 499 ++++++++++++
>  drivers/raw/octeontx2_ep/otx2_ep_test.c            | 173 +++++
>  drivers/raw/octeontx2_ep/otx2_ep_vf.c              | 476 ++++++++++++
>  drivers/raw/octeontx2_ep/otx2_ep_vf.h              |  10 +
>  .../rte_rawdev_octeontx2_ep_version.map            |   4 +
>  mk/rte.app.mk                                      |   2 +
>  21 files changed, 2779 insertions(+)
>  create mode 100644 doc/guides/rawdevs/octeontx2_ep.rst
>  create mode 100644 drivers/common/octeontx2/hw/otx2_sdp.h
>  create mode 100644 drivers/raw/octeontx2_ep/Makefile  create mode
> 100644 drivers/raw/octeontx2_ep/meson.build
>  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_enqdeq.c
>  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_enqdeq.h
>  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_rawdev.c
>  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_rawdev.h
>  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_test.c
>  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_vf.c
>  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_vf.h
>  create mode 100644
> drivers/raw/octeontx2_ep/rte_rawdev_octeontx2_ep_version.map
> 
> --
> 1.8.3.1
Gavin Hu Jan. 8, 2020, 8:14 a.m. UTC | #2
Hi Mahipal,

Please cc me in your future optimization patches. 

Series-reviewed-by: Gavin Hu <gavin.hu@arm.com>


> -----Original Message-----
> From: Mahipal Challa <mchalla@marvell.com>
> Sent: Wednesday, January 8, 2020 3:32 PM
> To: dev@dpdk.org; thomas@monjalon.net; jerinj@marvell.com; Gavin Hu
> <Gavin.Hu@arm.com>
> Cc: jerinj@marvell.com; Narayana Prasad Raju Athreya
> <pathreya@marvell.com>; Subrahmanyam Nilla <snilla@marvell.com>;
> Venkateshwarlu Nalla <venkatn@marvell.com>; Gavin Hu
> <Gavin.Hu@arm.com>
> Subject: RE: [dpdk-dev] [PATCH v4 0/6] OCTEON TX2 End Point Driver
> 
> Hi Gavin,
> We have incorporated the changes you suggested in v3, please ack.
> We like to take up performance improvement optimizations later( that you
> suggested in v3) and upstream in the future, so for this release 20.02 we like to
> go with the existing patch set sources(v4), please ack.
> 
> Thanks,
> Mahipal
> 
> > -----Original Message-----
> > From: dev <dev-bounces@dpdk.org> On Behalf Of Mahipal Challa
> > Sent: Tuesday, January 7, 2020 7:53 PM
> > To: dev@dpdk.org
> > Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>; Narayana Prasad Raju
> > Athreya <pathreya@marvell.com>; Subrahmanyam Nilla
> > <snilla@marvell.com>; Venkateshwarlu Nalla <venkatn@marvell.com>;
> > Gavin.Hu@arm.com
> > Subject: [dpdk-dev] [PATCH v4 0/6] OCTEON TX2 End Point Driver
> >
> > This patchset adds support for OCTEON TX2 end point mode of operation.
> > The driver implementation uses DPDK rawdevice sub-system.
> >
> > v2:
> > * Updated memory barrior API's as per Gavin Hu suggestion.
> >
> > v3:
> > * Fixed memory leak possibility issues.
> >
> > v4:
> > * Improved error handling in selftest API.
> >
> > Mahipal Challa (6):
> >   raw/octeontx2_ep: add build infra and device probe
> >   raw/octeontx2_ep: add device configuration
> >   raw/octeontx2_ep: add device uninitialization
> >   raw/octeontx2_ep: add enqueue operation
> >   raw/octeontx2_ep: add dequeue operation
> >   raw/octeontx2_ep: add driver self test
> >
> >  MAINTAINERS                                        |   5 +
> >  config/common_base                                 |   5 +
> >  doc/guides/rawdevs/index.rst                       |   1 +
> >  doc/guides/rawdevs/octeontx2_ep.rst                |  89 +++
> >  drivers/common/octeontx2/hw/otx2_sdp.h             | 184 +++++
> >  drivers/common/octeontx2/otx2_common.c             |   9 +
> >  drivers/common/octeontx2/otx2_common.h             |   4 +
> >  .../octeontx2/rte_common_octeontx2_version.map     |   6 +
> >  drivers/raw/Makefile                               |   1 +
> >  drivers/raw/meson.build                            |   1 +
> >  drivers/raw/octeontx2_ep/Makefile                  |  44 ++
> >  drivers/raw/octeontx2_ep/meson.build               |   9 +
> >  drivers/raw/octeontx2_ep/otx2_ep_enqdeq.c          | 844
> > +++++++++++++++++++++
> >  drivers/raw/octeontx2_ep/otx2_ep_enqdeq.h          |  52 ++
> >  drivers/raw/octeontx2_ep/otx2_ep_rawdev.c          | 361 +++++++++
> >  drivers/raw/octeontx2_ep/otx2_ep_rawdev.h          | 499 ++++++++++++
> >  drivers/raw/octeontx2_ep/otx2_ep_test.c            | 173 +++++
> >  drivers/raw/octeontx2_ep/otx2_ep_vf.c              | 476 ++++++++++++
> >  drivers/raw/octeontx2_ep/otx2_ep_vf.h              |  10 +
> >  .../rte_rawdev_octeontx2_ep_version.map            |   4 +
> >  mk/rte.app.mk                                      |   2 +
> >  21 files changed, 2779 insertions(+)
> >  create mode 100644 doc/guides/rawdevs/octeontx2_ep.rst
> >  create mode 100644 drivers/common/octeontx2/hw/otx2_sdp.h
> >  create mode 100644 drivers/raw/octeontx2_ep/Makefile  create mode
> > 100644 drivers/raw/octeontx2_ep/meson.build
> >  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_enqdeq.c
> >  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_enqdeq.h
> >  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_rawdev.c
> >  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_rawdev.h
> >  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_test.c
> >  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_vf.c
> >  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_vf.h
> >  create mode 100644
> > drivers/raw/octeontx2_ep/rte_rawdev_octeontx2_ep_version.map
> >
> > --
> > 1.8.3.1
Mahipal Challa Jan. 10, 2020, 7:33 a.m. UTC | #3
Hi Thomas,
Assuming that this series is ready for merging now, would you please merge this series.

Thank you Gavin for reviewing the series.

Thanks,
Mahipal

> -----Original Message-----
> From: Gavin Hu <Gavin.Hu@arm.com>
> Sent: Wednesday, January 8, 2020 1:45 PM
> To: Mahipal Challa <mchalla@marvell.com>; dev@dpdk.org;
> thomas@monjalon.net; Jerin Jacob Kollanukkaran <jerinj@marvell.com>
> Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>; Narayana Prasad Raju
> Athreya <pathreya@marvell.com>; Subrahmanyam Nilla
> <snilla@marvell.com>; Venkateshwarlu Nalla <venkatn@marvell.com>; nd
> <nd@arm.com>
> Subject: [EXT] RE: [dpdk-dev] [PATCH v4 0/6] OCTEON TX2 End Point Driver
> 
> External Email
> 
> ----------------------------------------------------------------------
> Hi Mahipal,
> 
> Please cc me in your future optimization patches.
> 
> Series-reviewed-by: Gavin Hu <gavin.hu@arm.com>
> 
> 
> > -----Original Message-----
> > From: Mahipal Challa <mchalla@marvell.com>
> > Sent: Wednesday, January 8, 2020 3:32 PM
> > To: dev@dpdk.org; thomas@monjalon.net; jerinj@marvell.com; Gavin Hu
> > <Gavin.Hu@arm.com>
> > Cc: jerinj@marvell.com; Narayana Prasad Raju Athreya
> > <pathreya@marvell.com>; Subrahmanyam Nilla <snilla@marvell.com>;
> > Venkateshwarlu Nalla <venkatn@marvell.com>; Gavin Hu
> > <Gavin.Hu@arm.com>
> > Subject: RE: [dpdk-dev] [PATCH v4 0/6] OCTEON TX2 End Point Driver
> >
> > Hi Gavin,
> > We have incorporated the changes you suggested in v3, please ack.
> > We like to take up performance improvement optimizations later( that
> > you suggested in v3) and upstream in the future, so for this release
> > 20.02 we like to go with the existing patch set sources(v4), please ack.
> >
> > Thanks,
> > Mahipal
> >
> > > -----Original Message-----
> > > From: dev <dev-bounces@dpdk.org> On Behalf Of Mahipal Challa
> > > Sent: Tuesday, January 7, 2020 7:53 PM
> > > To: dev@dpdk.org
> > > Cc: Jerin Jacob Kollanukkaran <jerinj@marvell.com>; Narayana Prasad
> > > Raju Athreya <pathreya@marvell.com>; Subrahmanyam Nilla
> > > <snilla@marvell.com>; Venkateshwarlu Nalla <venkatn@marvell.com>;
> > > Gavin.Hu@arm.com
> > > Subject: [dpdk-dev] [PATCH v4 0/6] OCTEON TX2 End Point Driver
> > >
> > > This patchset adds support for OCTEON TX2 end point mode of
> operation.
> > > The driver implementation uses DPDK rawdevice sub-system.
> > >
> > > v2:
> > > * Updated memory barrior API's as per Gavin Hu suggestion.
> > >
> > > v3:
> > > * Fixed memory leak possibility issues.
> > >
> > > v4:
> > > * Improved error handling in selftest API.
> > >
> > > Mahipal Challa (6):
> > >   raw/octeontx2_ep: add build infra and device probe
> > >   raw/octeontx2_ep: add device configuration
> > >   raw/octeontx2_ep: add device uninitialization
> > >   raw/octeontx2_ep: add enqueue operation
> > >   raw/octeontx2_ep: add dequeue operation
> > >   raw/octeontx2_ep: add driver self test
> > >
> > >  MAINTAINERS                                        |   5 +
> > >  config/common_base                                 |   5 +
> > >  doc/guides/rawdevs/index.rst                       |   1 +
> > >  doc/guides/rawdevs/octeontx2_ep.rst                |  89 +++
> > >  drivers/common/octeontx2/hw/otx2_sdp.h             | 184 +++++
> > >  drivers/common/octeontx2/otx2_common.c             |   9 +
> > >  drivers/common/octeontx2/otx2_common.h             |   4 +
> > >  .../octeontx2/rte_common_octeontx2_version.map     |   6 +
> > >  drivers/raw/Makefile                               |   1 +
> > >  drivers/raw/meson.build                            |   1 +
> > >  drivers/raw/octeontx2_ep/Makefile                  |  44 ++
> > >  drivers/raw/octeontx2_ep/meson.build               |   9 +
> > >  drivers/raw/octeontx2_ep/otx2_ep_enqdeq.c          | 844
> > > +++++++++++++++++++++
> > >  drivers/raw/octeontx2_ep/otx2_ep_enqdeq.h          |  52 ++
> > >  drivers/raw/octeontx2_ep/otx2_ep_rawdev.c          | 361 +++++++++
> > >  drivers/raw/octeontx2_ep/otx2_ep_rawdev.h          | 499 ++++++++++++
> > >  drivers/raw/octeontx2_ep/otx2_ep_test.c            | 173 +++++
> > >  drivers/raw/octeontx2_ep/otx2_ep_vf.c              | 476 ++++++++++++
> > >  drivers/raw/octeontx2_ep/otx2_ep_vf.h              |  10 +
> > >  .../rte_rawdev_octeontx2_ep_version.map            |   4 +
> > >  mk/rte.app.mk                                      |   2 +
> > >  21 files changed, 2779 insertions(+)  create mode 100644
> > > doc/guides/rawdevs/octeontx2_ep.rst
> > >  create mode 100644 drivers/common/octeontx2/hw/otx2_sdp.h
> > >  create mode 100644 drivers/raw/octeontx2_ep/Makefile  create mode
> > > 100644 drivers/raw/octeontx2_ep/meson.build
> > >  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_enqdeq.c
> > >  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_enqdeq.h
> > >  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_rawdev.c
> > >  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_rawdev.h
> > >  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_test.c
> > >  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_vf.c
> > >  create mode 100644 drivers/raw/octeontx2_ep/otx2_ep_vf.h
> > >  create mode 100644
> > > drivers/raw/octeontx2_ep/rte_rawdev_octeontx2_ep_version.map
> > >
> > > --
> > > 1.8.3.1
Jerin Jacob Jan. 10, 2020, 7:49 a.m. UTC | #4
On Tue, Jan 7, 2020 at 7:53 PM Mahipal Challa <mchalla@marvell.com> wrote:
>
> This patchset adds support for OCTEON TX2 end point mode of operation.
> The driver implementation uses DPDK rawdevice sub-system.
>
> v2:
> * Updated memory barrior API's as per Gavin Hu suggestion.
>
> v3:
> * Fixed memory leak possibility issues.
>
> v4:
> * Improved error handling in selftest API.
>
> Mahipal Challa (6):
>   raw/octeontx2_ep: add build infra and device probe
>   raw/octeontx2_ep: add device configuration
>   raw/octeontx2_ep: add device uninitialization
>   raw/octeontx2_ep: add enqueue operation
>   raw/octeontx2_ep: add dequeue operation
>   raw/octeontx2_ep: add driver self test
>
>  MAINTAINERS                                        |   5 +
>  config/common_base                                 |   5 +
>  doc/guides/rawdevs/index.rst                       |   1 +
>  doc/guides/rawdevs/octeontx2_ep.rst                |  89 +++

Please update the release notes as well (See
doc/guides/rel_notes/release_20_02.rst)
Mahipal Challa Jan. 10, 2020, 9:08 a.m. UTC | #5
Hi Jerin,
Please see the response inline.

> -----Original Message-----
> From: Jerin Jacob <jerinjacobk@gmail.com>
> Sent: Friday, January 10, 2020 1:19 PM
> To: Mahipal Challa <mchalla@marvell.com>
> Cc: dpdk-dev <dev@dpdk.org>; Jerin Jacob Kollanukkaran
> <jerinj@marvell.com>; Narayana Prasad Raju Athreya
> <pathreya@marvell.com>; Subrahmanyam Nilla <snilla@marvell.com>;
> Venkateshwarlu Nalla <venkatn@marvell.com>; Gavin Hu
> <Gavin.Hu@arm.com>
> Subject: [EXT] Re: [dpdk-dev] [PATCH v4 0/6] OCTEON TX2 End Point Driver
> 
> External Email
> 
> ----------------------------------------------------------------------
> On Tue, Jan 7, 2020 at 7:53 PM Mahipal Challa <mchalla@marvell.com>
> wrote:
> >
> > This patchset adds support for OCTEON TX2 end point mode of operation.
> > The driver implementation uses DPDK rawdevice sub-system.
> >
> > v2:
> > * Updated memory barrior API's as per Gavin Hu suggestion.
> >
> > v3:
> > * Fixed memory leak possibility issues.
> >
> > v4:
> > * Improved error handling in selftest API.
> >
> > Mahipal Challa (6):
> >   raw/octeontx2_ep: add build infra and device probe
> >   raw/octeontx2_ep: add device configuration
> >   raw/octeontx2_ep: add device uninitialization
> >   raw/octeontx2_ep: add enqueue operation
> >   raw/octeontx2_ep: add dequeue operation
> >   raw/octeontx2_ep: add driver self test
> >
> >  MAINTAINERS                                        |   5 +
> >  config/common_base                                 |   5 +
> >  doc/guides/rawdevs/index.rst                       |   1 +
> >  doc/guides/rawdevs/octeontx2_ep.rst                |  89 +++
> 
>
> Please update the release notes as well (See
> doc/guides/rel_notes/release_20_02.rst)

[Mahipal]: Sure, will update it and send the new series v5 patch set.

Thanks,
Mahipal