Hi, > -----Original Message----- > From: Viacheslav Ovsiienko <viachesl...@nvidia.com> > Sent: Sunday, March 14, 2021 2:13 PM > To: dev@dpdk.org > Cc: Raslan Darawsheh <rasl...@nvidia.com>; Matan Azrad > <ma...@nvidia.com>; Ori Kam <or...@nvidia.com> > Subject: [PATCH v3 0/5] mlx5: add timestamp format support > > There are two different timestamp formats can be provided potentially > by mlx5 supported hardware. > > The free-running format provides some opaque values captured from > internal clock counter clocked by some independent oscillator. > The free-running frequency is not pre-defined and should be queried > from the NIC. > > The real-time timestamps are presented in nanoseconds and captured from > the dedicated UTC counter, that can be adjusted on the fly and might be > synchronized with some external master clock. > > Depending on the version and configuration the hardware might support > either FR or RT timestamps, or both in the same time on per queue basis. > Since firmware version xx.30.0256 the timestamp format can be configured > via fields in the queue context at the object creation time. For the > compatibility reasons the default zero value configures timestamps with > free-running format. The NIC ConnectX-5 and earlier ones support the > free-running format only. Since ConnectX-6 both formats might be > supported > and configured. The default zero value (specified in the non-defined > yet timestamp format context field) causes the queue creation failure > (rejected by firmware) if the NIC is configured to real-time timestamp > format. > > Hence, it is crucial to check whether firmware/hardware supports > timestamp formats and configure queues accordingly, and this patchset > also must be provided for stable DPDK releases. > > Compatibility affected (without this patchset) summary: > - ConnectX-6DX or BlueField 2 > - real-time format is configured in NV settings > - firmware is xx.30.1000 or higher > > Viacheslav Ovsiienko (5): > common/mlx5: add timestamp format support to DevX > net/mlx5: add timestamp format support > vdpa/mlx5: add timestamp format support > regex/mlx5: add timestamp format support > compress/mlx5: add timestamp format support > > drivers/common/mlx5/mlx5_devx_cmds.c | 35 ++++++++++++++-- > drivers/common/mlx5/mlx5_devx_cmds.h | 7 ++++ > drivers/common/mlx5/mlx5_prm.h | 55 +++++++++++++++++++++++- > - > drivers/compress/mlx5/mlx5_compress.c | 3 ++ > drivers/net/mlx5/linux/mlx5_os.c | 3 ++ > drivers/net/mlx5/mlx5.h | 3 ++ > drivers/net/mlx5/mlx5_devx.c | 2 +- > drivers/net/mlx5/mlx5_flow_age.c | 7 +++- > drivers/net/mlx5/mlx5_txpp.c | 2 + > drivers/net/mlx5/windows/mlx5_os.c | 3 ++ > drivers/regex/mlx5/mlx5_regex.c | 1 + > drivers/regex/mlx5/mlx5_regex.h | 1 + > drivers/regex/mlx5/mlx5_regex_control.c | 1 + > drivers/vdpa/mlx5/mlx5_vdpa.c | 1 + > drivers/vdpa/mlx5/mlx5_vdpa.h | 1 + > drivers/vdpa/mlx5/mlx5_vdpa_event.c | 2 + > 16 files changed, 117 insertions(+), 10 deletions(-) > > -- > v1: https://inbox.dpdk.org/dev/20210307100251.22538-1- > viachesl...@nvidia.com/ > v2: - remove non needed settings for hairpins > - the unified inline routine to set timestamp format > - typos and rewording commit messages > v3: - fix minor typo bug (, -> ;) in code > - add missed v3 tag > > -- > 2.28.0
Series applied to next-net-mlx, Kindest regards, Raslan Darawsheh