Subject: Re: [PATCH net-next] net: lan743x: skip timestamping for non-PTP packets

From: Vadim Fedorenko <[email-masked]>
Date: Mon, 31 Jul 2023 14:45:45 +0100

On 31/07/2023 13:54, Vishvambar Panth S wrote:
> Currently all the RX packets are timestamped and the timestamp is appended
> to the RX packet for processing, this reduces RX throughput. This can be
> optimized by timestamping packets only when the PTP messages are received.
> The RX PTP Configuration register [PTP_RX_TS_CFG] specifies what are the
> PTP message types to be timestamped. The PTP_RX_TS_CFG_MSG_EN_ configures
> Sync, Delay_Req, Pdelay_Req, Pdelay_Resp Message types to be timestamped.
> The RX_CFG_B_TS_ALL_RX_ bit enables storing the timestamp for all RX
> frames, now this is cleared as only PTP packets will be timestamped. The
> RX_CFG_B_TS_DESCR_EN_ enables storing the timestamp in an extension
> descriptor. When PTP messages are received the timestamp will be stored
> in an extension descriptor of the RX packet.

Even though the performance benefit is clear, the PTP subsystem provides
options to select whether PTP filters must be applied or all packets
must be stamped. I think it's better to implement both options as the
hardware supports them, there are use cases where timestamps are needed
for all packets. Linuxptp can be easily configured for both variants,
the hardware/driver documentation can state that there will be
performance degradation for all RX packets timestamps mode.