[RFC v3 0/3] add frequency adjustment support for PTP timesync
Simei Su
simei.su at intel.com
Mon May 22 15:23:29 CEST 2023
This patchset cover below parts:
(1)Introduce a new timesync API called "rte_eth_timesync_adjust_freq" that
enables frequency adjustment during PTP timesync. This new API aligns with
the kernel PTP which already supports frequency adjustment. It brings DPDK
closer in alignment with the kernel's best practice.
(2)Refine the ptpclient application by applying a PI algorithm that leverages
the new API to further improve timesync accuracy. These changes doesn't break
original solution and creates a more accurate solution for DPDK-based high
accuracy PTP. We have provided significant improvements for timesync accuracy
on e810 and we believe these improvements will also benefit other devices.
The original command for starting ptpclient is:
./build/examples/dpdk-ptpclient -a 0000:81:00.0 -c 1 -n 3 -- -T 0 -p 0x1
The command with PI algorithm is:
./build/examples/dpdk-ptpclient -a 0000:81:00.0 -c 1 -n 3 -- -T 0 -p 0x1 -- controller=pi
[RFC v3 1/3] ethdev: add frequency adjustment API.
[RFC v3 2/3] examples/ptpclient: refine application.
[RFC v3 3/3] examples/ptpclient: add frequency adjustment support.
v3:
* Refine commit log in patch.
* Add more description for the new API.
v2:
* Remove the ice PMD part from the RFC.
* Add description in cover letter.
* Refine commit log in patch.
Simei Su (3):
ethdev: add frequency adjustment API
examples/ptpclient: refine application
examples/ptpclient: add frequency adjustment support
examples/ptpclient/ptpclient.c | 222 +++++++++++++++++++++++++++++++++------
lib/ethdev/ethdev_driver.h | 5 +
lib/ethdev/ethdev_trace.h | 9 ++
lib/ethdev/ethdev_trace_points.c | 3 +
lib/ethdev/rte_ethdev.c | 19 ++++
lib/ethdev/rte_ethdev.h | 38 +++++++
6 files changed, 265 insertions(+), 31 deletions(-)
--
2.9.5
More information about the dev
mailing list