Subject: Add PHC support with error bound value for ENA driver

From: "Bernstein, Amit" <[email-masked]>
Date: Thu, 1 Feb 2024 07:24:51 +0000

Hi Thomas, Richard and all,

In one of the upcoming releases, we're planning to add PHC support to the ENA driver (/drivers/net/ethernet/amazon/ena/)
To provide the best experience for service customers, the ENA driver will expose an error_bound parameter (expressed in nanoseconds), 
which will represent the maximal clock error on each given PHC timestamp.
The error bound is calculated by the device,  taking into account the accuracy and delays of all the device's PHC components.

Based on our search, there is no similar functionality in other drivers, meaning there is no user interface to expose it.
We're currently exploring the best method of exposing this capability to the user.
Our debate is between:
- Extending the gettimex64 API in ptp_clock_info
- Introducing a new devlink entry
- Updating the time-related ethtool option (-T flag).

As our device sends each PHC timestamp with an error_bound value together, gettimex64 is the reasonable option for us and our recommended solution.
We would like to ask for your recommendation.

We have already consulted with Jakub, who recommended that we consult with all of you.

For more information, you may visit: https://aws.amazon.com/blogs/compute/its-about-time-microsecond-accurate-clocks-on-amazon-ec2-instances/

Thanks,
Amit