Re: [PATCH net-next V3 0/3] mlx5 PTM cross timestamping support

From: Vadim Fedorenko
Date: Wed Jul 31 2024 - 09:27:05 EST


On 30/07/2024 14:40, Tariq Toukan wrote:
Hi,

This is V3. You can find V2 as part of a larger series here:
https://lore.kernel.org/netdev/d1dba3e1-2ecc-4fdf-a23b-7696c4bccf45@xxxxxxxxx/T/

This patchset by Rahul and Carolina adds PTM (Precision Time Measurement)
support to the mlx5 driver.

PTM is a PCI extended capability introduced by PCI-SIG for providing an
accurate read of the device clock offset without being impacted by
asymmetric bus transfer rates.

The performance of PTM on ConnectX-7 was evaluated using both real-time
(RTC) and free-running (FRC) clocks under traffic and no traffic
conditions. Tests with phc2sys measured the maximum offset values at a 50Hz
rate, with and without PTM.

Results:

1. No traffic
+-----+--------+--------+
| | No-PTM | PTM |
+-----+--------+--------+
| FRC | 125 ns | <29 ns |
+-----+--------+--------+
| RTC | 248 ns | <34 ns |
+-----+--------+--------+

2. With traffic
+-----+--------+--------+
| | No-PTM | PTM |
+-----+--------+--------+
| FRC | 254 ns | <40 ns |
+-----+--------+--------+
| RTC | 255 ns | <45 ns |
+-----+--------+--------+


Series generated against:
commit 1722389b0d86 ("Merge tag 'net-6.11-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net")

Thanks,
Tariq.

V3:
- Rebased on latest. As a result, had to replace the call to the recently
removed function convert_art_ns_to_tsc().
- Added more CCs to the series per Jakub's feedback.
- Added perf numbers.


Carolina Jubran (1):
net/mlx5: Add support for enabling PTM PCI capability

Rahul Rameshbabu (2):
net/mlx5: Add support for MTPTM and MTCTR registers
net/mlx5: Implement PTM cross timestamping support

drivers/net/ethernet/mellanox/mlx5/core/fw.c | 1 +
.../ethernet/mellanox/mlx5/core/lib/clock.c | 91 +++++++++++++++++++
.../net/ethernet/mellanox/mlx5/core/main.c | 6 ++
include/linux/mlx5/device.h | 7 +-
include/linux/mlx5/driver.h | 2 +
include/linux/mlx5/mlx5_ifc.h | 43 +++++++++
6 files changed, 149 insertions(+), 1 deletion(-)


For the series:

Tested-by: Vadim Fedorenko <vadim.fedorenko@xxxxxxxxx>