mbox series

[v2,00/17] net/mlx5: introduce accurate packet Tx scheduling

Message ID 1594794114-16313-1-git-send-email-viacheslavo@mellanox.com (mailing list archive)
Headers
Series net/mlx5: introduce accurate packet Tx scheduling |

Message

Slava Ovsiienko July 15, 2020, 6:21 a.m. UTC
  The accurate packet Tx scheduling on timestamps was introduced [1].
This patchset provides the feature implementation on mlx5 PMD side.

[1] http://patches.dpdk.org/patch/73742/

Signed-off-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
Acked-by: Matan Azrad <matan@mellanox.com>

Viacheslav Ovsiienko (17):
  common/mlx5: update common part to support packet pacing
  net/mlx5: introduce send scheduling devargs
  net/mlx5: fix UAR lock sharing for multiport devices
  net/mlx5: introduce shared UAR resource
  net/mlx5: create clock queue for packet pacing
  net/mlx5: create rearm queue for packet pacing
  net/mlx5: create Tx queues with DevX
  net/mlx5: allocate packet pacing context
  net/mlx5: introduce clock queue service routine
  net/mlx5: prepare Tx queue structures to support timestamp
  net/mlx5: convert timestamp to completion index
  net/mlx5: prepare Tx datapath to support sheduling
  net/mlx5: add scheduling support to send routine template
  net/mlx5: add read device clock support
  net/mlx5: provide the send scheduling error statistics
  common/mlx5: add register access DevX routine
  net/mlx5: convert Rx timestamps in realtime format

 doc/guides/nics/mlx5.rst                        |   37 +
 drivers/common/mlx5/Makefile                    |   25 +
 drivers/common/mlx5/linux/meson.build           |   10 +
 drivers/common/mlx5/linux/mlx5_glue.c           |   31 +-
 drivers/common/mlx5/linux/mlx5_glue.h           |    5 +
 drivers/common/mlx5/mlx5_devx_cmds.c            |   79 +-
 drivers/common/mlx5/mlx5_devx_cmds.h            |   13 +
 drivers/common/mlx5/mlx5_prm.h                  |  121 +-
 drivers/common/mlx5/rte_common_mlx5_version.map |    1 +
 drivers/net/mlx5/Makefile                       |    1 +
 drivers/net/mlx5/linux/mlx5_os.c                |   97 +-
 drivers/net/mlx5/meson.build                    |    1 +
 drivers/net/mlx5/mlx5.c                         |   61 +-
 drivers/net/mlx5/mlx5.h                         |   89 +-
 drivers/net/mlx5/mlx5_defs.h                    |   11 +
 drivers/net/mlx5/mlx5_rxq.c                     |   26 +-
 drivers/net/mlx5/mlx5_rxtx.c                    |  373 ++++++-
 drivers/net/mlx5/mlx5_rxtx.h                    |   97 ++
 drivers/net/mlx5/mlx5_rxtx_vec_altivec.h        |   34 +-
 drivers/net/mlx5/mlx5_rxtx_vec_neon.h           |   54 +-
 drivers/net/mlx5/mlx5_rxtx_vec_sse.h            |   34 +-
 drivers/net/mlx5/mlx5_stats.c                   |    7 +-
 drivers/net/mlx5/mlx5_trigger.c                 |   26 +-
 drivers/net/mlx5/mlx5_txpp.c                    | 1333 +++++++++++++++++++++++
 drivers/net/mlx5/mlx5_txq.c                     |  342 +++++-
 25 files changed, 2799 insertions(+), 109 deletions(-)
 create mode 100644 drivers/net/mlx5/mlx5_txpp.c