[dpdk-dev] [PATCH 2/2] net/hns3: support IEEE 1588 PTP
Ferruh Yigit
ferruh.yigit at intel.com
Tue Mar 30 15:59:24 CEST 2021
On 3/26/2021 8:56 AM, Min Hu (Connor) wrote:
> Add hns3 support for new ethdev APIs to enable and read IEEE1588/
> 802.1AS PTP timestamps.
>
> Signed-off-by: Min Hu (Connor) <humin29 at huawei.com>
> ---
> doc/guides/nics/features/hns3.ini | 2 +
> doc/guides/nics/hns3.rst | 1 +
> drivers/net/hns3/hns3_cmd.h | 33 +++++
> drivers/net/hns3/hns3_ethdev.c | 59 +++++++-
> drivers/net/hns3/hns3_ethdev.h | 25 ++++
> drivers/net/hns3/hns3_ptp.c | 294 ++++++++++++++++++++++++++++++++++++++
> drivers/net/hns3/hns3_regs.h | 25 ++++
> drivers/net/hns3/hns3_rxtx.c | 56 +++++++-
> drivers/net/hns3/hns3_rxtx.h | 12 ++
> drivers/net/hns3/hns3_rxtx_vec.c | 19 ++-
> drivers/net/hns3/meson.build | 3 +-
> 11 files changed, 516 insertions(+), 13 deletions(-)
> create mode 100644 drivers/net/hns3/hns3_ptp.c
>
> diff --git a/doc/guides/nics/features/hns3.ini b/doc/guides/nics/features/hns3.ini
> index 3988be4..502bfe7 100644
> --- a/doc/guides/nics/features/hns3.ini
> +++ b/doc/guides/nics/features/hns3.ini
> @@ -43,6 +43,8 @@ Stats per queue = Y
> FW version = Y
> Registers dump = Y
> Module EEPROM dump = Y
> +Timesync = Y
> +Timestamp offload = Y
> Multiprocess aware = Y
> Linux = Y
> ARMv8 = Y
> diff --git a/doc/guides/nics/hns3.rst b/doc/guides/nics/hns3.rst
> index ccd2f6f..3366562 100644
> --- a/doc/guides/nics/hns3.rst
> +++ b/doc/guides/nics/hns3.rst
> @@ -37,6 +37,7 @@ Features of the HNS3 PMD are:
> - MTU update
> - NUMA support
> - Generic flow API
> +- IEEE1588/802.1AS timestamping
>
> Prerequisites
> -------------
> diff --git a/drivers/net/hns3/hns3_cmd.h b/drivers/net/hns3/hns3_cmd.h
> index e704d0c..abc853b 100644
> --- a/drivers/net/hns3/hns3_cmd.h
> +++ b/drivers/net/hns3/hns3_cmd.h
> @@ -123,6 +123,12 @@ enum hns3_opcode_type {
> HNS3_OPC_CLEAR_MAC_TNL_INT = 0x0312,
> HNS3_OPC_CONFIG_FEC_MODE = 0x031A,
>
> +#ifdef RTE_LIBRTE_IEEE1588
> + /* PTP command */
> + HNS3_OPC_PTP_INT_EN = 0x0501,
> + HNS3_OPC_CFG_PTP_MODE = 0x0507,
> +#endif
> +
Hi Connor,
Does it needs to be a compile time configuration? What happens if it is always
enabled, or controlled by device argument?
More information about the dev
mailing list