[PATCH net-next V3 0/3] mlx5 PTM cross timestamping support
From: Tariq Toukan
Date: Tue Jul 30 2024 - 09:43:15 EST
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(-)
--
2.44.0