[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20211021064438.GA11169@linux.intel.com>
Date: Thu, 21 Oct 2021 14:44:38 +0800
From: Wong Vee Khee <vee.khee.wong@...ux.intel.com>
To: Kurt Kanzenbach <kurt@...utronix.de>
Cc: "David S. Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>,
Giuseppe Cavallaro <peppe.cavallaro@...com>,
Alexandre Torgue <alexandre.torgue@...s.st.com>,
Jose Abreu <joabreu@...opsys.com>,
Maxime Coquelin <mcoquelin.stm32@...il.com>,
Fugang Duan <fugang.duan@....com>,
Sebastian Andrzej Siewior <bigeasy@...utronix.de>,
Ong Boon Leong <boon.leong.ong@...el.com>,
netdev@...r.kernel.org
Subject: Re: [PATCH net] net: stmmac: Fix E2E delay mechanism
On Wed, Oct 20, 2021 at 09:04:33AM +0200, Kurt Kanzenbach wrote:
> When utilizing End to End delay mechanism, the following error messages show up:
>
> |root@...1:~# ptp4l --tx_timestamp_timeout=50 -H -i eno2 -E -m
> |ptp4l[950.573]: selected /dev/ptp3 as PTP clock
> |ptp4l[950.586]: port 1: INITIALIZING to LISTENING on INIT_COMPLETE
> |ptp4l[950.586]: port 0: INITIALIZING to LISTENING on INIT_COMPLETE
> |ptp4l[952.879]: port 1: new foreign master 001395.fffe.4897b4-1
> |ptp4l[956.879]: selected best master clock 001395.fffe.4897b4
> |ptp4l[956.879]: port 1: assuming the grand master role
> |ptp4l[956.879]: port 1: LISTENING to GRAND_MASTER on RS_GRAND_MASTER
> |ptp4l[962.017]: port 1: received DELAY_REQ without timestamp
> |ptp4l[962.273]: port 1: received DELAY_REQ without timestamp
> |ptp4l[963.090]: port 1: received DELAY_REQ without timestamp
>
> Commit f2fb6b6275eb ("net: stmmac: enable timestamp snapshot for required PTP
> packets in dwmac v5.10a") already addresses this problem for the dwmac
> v5.10. However, same holds true for all dwmacs above version v4.10. Correct the
> check accordingly. Afterwards everything works as expected.
>
> Tested on Intel Atom(R) x6414RE Processor.
>
> Fixes: 14f347334bf2 ("net: stmmac: Correctly take timestamp for PTPv2")
> Fixes: f2fb6b6275eb ("net: stmmac: enable timestamp snapshot for required PTP packets in dwmac v5.10a")
> Suggested-by: Ong Boon Leong <boon.leong.ong@...el.com>
> Signed-off-by: Kurt Kanzenbach <kurt@...utronix.de>
> ---
> drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> index eb3b7bf771d7..3d67d1fa3690 100644
> --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
> @@ -736,7 +736,7 @@ static int stmmac_hwtstamp_set(struct net_device *dev, struct ifreq *ifr)
> config.rx_filter = HWTSTAMP_FILTER_PTP_V2_EVENT;
> ptp_v2 = PTP_TCR_TSVER2ENA;
> snap_type_sel = PTP_TCR_SNAPTYPSEL_1;
> - if (priv->synopsys_id != DWMAC_CORE_5_10)
> + if (priv->synopsys_id < DWMAC_CORE_4_10)
> ts_event_en = PTP_TCR_TSEVNTENA;
> ptp_over_ipv4_udp = PTP_TCR_TSIPV4ENA;
> ptp_over_ipv6_udp = PTP_TCR_TSIPV6ENA;
This fixes PTPv2 E2E issue on EHL-based boards. Can this also
be applied to 5.4 and onwards?
Thanks,
Vee Khee
Powered by blists - more mailing lists