[dpdk-dev] [PATCH v3 00/27] OCTEON TX2 common and mempool driver

Jerin Jacob Kollanukkaran jerinj at marvell.com
Thu Jun 20 10:39:40 CEST 2019


> -----Original Message-----
> From: jerinj at marvell.com <jerinj at marvell.com>
> Sent: Monday, June 17, 2019 9:25 PM
> To: dev at dpdk.org
> Cc: Jerin Jacob Kollanukkaran <jerinj at marvell.com>; Thomas Monjalon
> <thomas at monjalon.net>
> Subject: [dpdk-dev] [PATCH v3 00/27] OCTEON TX2 common and mempool
> driver

Hi Thomas,

Could you merge this patch series
If there are no more review comments. 
Following patches sets[1]  has dependency  on this series.

[1]
http://patches.dpdk.org/patch/54002/
http://patches.dpdk.org/patch/54057/
http://patches.dpdk.org/patch/54017/

 
> From: Jerin Jacob <jerinj at marvell.com>
> 
> This patch set adds initial driver support for OCTEON TX2 SoC.
> 
> OCTEON TX2 is an armv8.2 SoC with integrated HW based mempool, ethdev,
> cryptodev, compressdev, and eventdev devices.
> 
> This patch set adds common driver and mempool device driver for OCTEON
> TX2 SoC.
> There will be three more patch series in this release to support ethdev,
> eventdev and cryptodev devices
> 
> More details about the OCTEON TX2 platform may found in [PATCH 15/27]
> doc: add Marvell OCTEON TX2 platform guide under
> doc/guides/platform/octeontx2.rst file.
> 
> This patches series also available at https://github.com/jerinjacobk/dpdk.git
> for quick download and review.
> 
> # Note on check patch issues
> 1) The mailbox prototype is the same as Linux kernel.
> https://elixir.bootlin.com/linux/latest/source/drivers/net/ethernet/marvell/
> octeontx2/af/mbox.h#L123
> In order to keep the base code intact, mailbox prototype expressed as
> macros with warnings
> 2) There are a few warnings from tooling about expected to add new
> symbols in the EXPERIMENTAL section. Since these API will be called only by
> octeontx2 client drivers and prototype are not exported to the application,
> those warnings are not relevant, Discussion at
> http://patches.dpdk.org/patch/53590/
> 
> v3:
> 
> 1) Replace the reference to v19.08 from v19.05
> 2) remove rte_panic from driver code
> 3) rebase to dpdk.org master(as of 17-June)
> 
> v2:
> 
> 1) Added CONFIG_RTE_MAX_VFIO_GROUPS for octeontx2 config in patch 1
> 2) Rebased to master to accommodate latest rename like ETHER_ADDR_LEN
> to RTE_ETHER_ADDR_LEN
> 3) Added pmd.raw.octeontx2.dpi log message in patch 5
> 4) Update platform guide with debugfs documentation in patch 15
> 5) Fix arm64 build issue with patch 25(Aaron Conole)
> "mempool/octeontx2: add optimized dequeue operation for arm64"
> 
> Cc: Thomas Monjalon <thomas at monjalon.net>
> 
> Jerin Jacob (22):
>   common/octeontx2: add build infrastructure and HW definition
>   common/octeontx2: add IO handling APIs
>   common/octeontx2: add mbox request and response definition
>   common/octeontx2: add mailbox base support infra
>   common/octeontx2: add runtime log infra
>   common/octeontx2: add mailbox send and receive support
>   common/octeontx2: introduce common device class
>   common/octeontx2: introduce irq handling functions
>   common/octeontx2: handle intra device operations
>   common/octeontx2: add VF mailbox IRQ and msg handler
>   doc: add Marvell OCTEON TX2 platform guide
>   mempool/octeontx2: add build infra and device probe
>   drivers: add init and fini on octeontx2 NPA object
>   mempool/octeontx2: add NPA HW operations
>   mempool/octeontx2: add NPA IRQ handler
>   mempool/octeontx2: add context dump support
>   mempool/octeontx2: add mempool alloc op
>   mempool/octeontx2: add mempool free op
>   mempool/octeontx2: add remaining slow path ops
>   mempool/octeontx2: add fast path mempool ops
>   mempool/octeontx2: add devargs for max pool selection
>   doc: add Marvell OCTEON TX2 mempool documentation
> 
> Nithin Dabilpuram (4):
>   common/octeontx2: add AF to PF mailbox IRQ and msg handlers
>   common/octeontx2: add PF to VF mailbox IRQ and msg handlers
>   common/octeontx2: add uplink message support
>   common/octeontx2: add FLR IRQ handler
> 
> Pavan Nikhilesh (1):
>   mempool/octeontx2: add optimized dequeue operation for arm64
> 
>  MAINTAINERS                                   |   10 +
>  config/common_base                            |    5 +
>  config/defconfig_arm64-octeontx2-linuxapp-gcc |    3 +
>  doc/guides/mempool/index.rst                  |    1 +
>  doc/guides/mempool/octeontx2.rst              |   90 +
>  .../octeontx2_packet_flow_hw_accelerators.svg | 2804
> +++++++++++++++++  .../img/octeontx2_resource_virtualization.svg | 2418
> ++++++++++++++
>  doc/guides/platform/index.rst                 |    1 +
>  doc/guides/platform/octeontx2.rst             |  496 +++
>  doc/guides/rel_notes/release_19_08.rst        |    2 +
>  drivers/common/Makefile                       |    5 +
>  drivers/common/meson.build                    |    2 +-
>  drivers/common/octeontx2/Makefile             |   37 +
>  drivers/common/octeontx2/hw/otx2_nix.h        | 1379 ++++++++
>  drivers/common/octeontx2/hw/otx2_npa.h        |  305 ++
>  drivers/common/octeontx2/hw/otx2_npc.h        |  472 +++
>  drivers/common/octeontx2/hw/otx2_rvu.h        |  212 ++
>  drivers/common/octeontx2/hw/otx2_sso.h        |  209 ++
>  drivers/common/octeontx2/hw/otx2_ssow.h       |   56 +
>  drivers/common/octeontx2/hw/otx2_tim.h        |   34 +
>  drivers/common/octeontx2/meson.build          |   25 +
>  drivers/common/octeontx2/otx2_common.c        |  248 ++
>  drivers/common/octeontx2/otx2_common.h        |  121 +
>  drivers/common/octeontx2/otx2_dev.c           | 1052 +++++++
>  drivers/common/octeontx2/otx2_dev.h           |   97 +
>  drivers/common/octeontx2/otx2_io_arm64.h      |   95 +
>  drivers/common/octeontx2/otx2_io_generic.h    |   63 +
>  drivers/common/octeontx2/otx2_irq.c           |  254 ++
>  drivers/common/octeontx2/otx2_irq.h           |   25 +
>  drivers/common/octeontx2/otx2_mbox.c          |  416 +++
>  drivers/common/octeontx2/otx2_mbox.h          | 1483 +++++++++
>  .../rte_common_octeontx2_version.map          |   39 +
>  drivers/mempool/Makefile                      |    1 +
>  drivers/mempool/meson.build                   |    2 +-
>  drivers/mempool/octeontx2/Makefile            |   39 +
>  drivers/mempool/octeontx2/meson.build         |   23 +
>  drivers/mempool/octeontx2/otx2_mempool.c      |  438 +++
>  drivers/mempool/octeontx2/otx2_mempool.h      |  208 ++
>  .../mempool/octeontx2/otx2_mempool_debug.c    |  135 +
>  drivers/mempool/octeontx2/otx2_mempool_irq.c  |  303 ++
> drivers/mempool/octeontx2/otx2_mempool_ops.c  |  760 +++++
>  .../rte_mempool_octeontx2_version.map         |    8 +
>  mk/rte.app.mk                                 |    6 +
>  43 files changed, 14380 insertions(+), 2 deletions(-)  create mode 100644
> doc/guides/mempool/octeontx2.rst  create mode 100644
> doc/guides/platform/img/octeontx2_packet_flow_hw_accelerators.svg
>  create mode 100644
> doc/guides/platform/img/octeontx2_resource_virtualization.svg
>  create mode 100644 doc/guides/platform/octeontx2.rst  create mode
> 100644 drivers/common/octeontx2/Makefile  create mode 100644
> drivers/common/octeontx2/hw/otx2_nix.h
>  create mode 100644 drivers/common/octeontx2/hw/otx2_npa.h
>  create mode 100644 drivers/common/octeontx2/hw/otx2_npc.h
>  create mode 100644 drivers/common/octeontx2/hw/otx2_rvu.h
>  create mode 100644 drivers/common/octeontx2/hw/otx2_sso.h
>  create mode 100644 drivers/common/octeontx2/hw/otx2_ssow.h
>  create mode 100644 drivers/common/octeontx2/hw/otx2_tim.h
>  create mode 100644 drivers/common/octeontx2/meson.build
>  create mode 100644 drivers/common/octeontx2/otx2_common.c
>  create mode 100644 drivers/common/octeontx2/otx2_common.h
>  create mode 100644 drivers/common/octeontx2/otx2_dev.c
>  create mode 100644 drivers/common/octeontx2/otx2_dev.h
>  create mode 100644 drivers/common/octeontx2/otx2_io_arm64.h
>  create mode 100644 drivers/common/octeontx2/otx2_io_generic.h
>  create mode 100644 drivers/common/octeontx2/otx2_irq.c
>  create mode 100644 drivers/common/octeontx2/otx2_irq.h
>  create mode 100644 drivers/common/octeontx2/otx2_mbox.c
>  create mode 100644 drivers/common/octeontx2/otx2_mbox.h
>  create mode 100644
> drivers/common/octeontx2/rte_common_octeontx2_version.map
>  create mode 100644 drivers/mempool/octeontx2/Makefile
>  create mode 100644 drivers/mempool/octeontx2/meson.build
>  create mode 100644 drivers/mempool/octeontx2/otx2_mempool.c
>  create mode 100644 drivers/mempool/octeontx2/otx2_mempool.h
>  create mode 100644 drivers/mempool/octeontx2/otx2_mempool_debug.c
>  create mode 100644 drivers/mempool/octeontx2/otx2_mempool_irq.c
>  create mode 100644 drivers/mempool/octeontx2/otx2_mempool_ops.c
>  create mode 100644
> drivers/mempool/octeontx2/rte_mempool_octeontx2_version.map
> 
> --
> 2.21.0



More information about the dev mailing list