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