On Mon, 19 Feb 2024 16:11:16 +0000 "Russell King (Oracle)" <linux@xxxxxxxxxxxxxxx> wrote: > On Mon, Feb 19, 2024 at 02:29:36PM +0100, Köry Maincent wrote: > > On Fri, 16 Feb 2024 10:09:36 -0800 > > Rahul Rameshbabu <rrameshbabu@xxxxxxxxxx> wrote: > > > > > On Fri, 16 Feb, 2024 16:52:22 +0100 Kory Maincent > > > <kory.maincent@xxxxxxxxxxx> wrote: > > > > Change the API to select MAC default time stamping instead of the PHY. > > > > Indeed the PHY is closer to the wire therefore theoretically it has less > > > > delay than the MAC timestamping but the reality is different. Due to > > > > lower time stamping clock frequency, latency in the MDIO bus and no PHC > > > > hardware synchronization between different PHY, the PHY PTP is often > > > > less precise than the MAC. The exception is for PHY designed specially > > > > for PTP case but these devices are not very widespread. For not > > > > breaking the compatibility default_timestamp flag has been introduced > > > > in phy_device that is set by the phy driver to know we are using the > > > > old API behavior. > > > > > > > > Signed-off-by: Kory Maincent <kory.maincent@xxxxxxxxxxx> > > > > --- > > > > > > Overall, I agree with the motivation and reasoning behind the patch. It > > > takes dedicated effort to build a good phy timestamping mechanism, so > > > this approach is good. I do have a question though. In this patch if we > > > set the phy as the default timestamp mechanism, does that mean for even > > > non-PTP applications, the phy will be used for timestamping when > > > hardware timestamping is enabled? If so, I think this might need some > > > thought because there are timing applications in general when a > > > timestamp closest to the MAC layer would be best. > > > > This patch comes from a request from Russell due to incompatibility between > > MAC and PHY timestamping when both were supported. > > https://lore.kernel.org/netdev/Y%2F4DZIDm1d74MuFJ@xxxxxxxxxxxxxxxxxxxxx/ > > > > His point was adding PTP support to a PHY driver would select timestamp > > from it by default even if we had a better timestamp with the MAC which is > > often the case. This is an unwanted behavior. > > https://lore.kernel.org/netdev/Y%2F6Cxf6EAAg22GOL@xxxxxxxxxxxxxxxxxxxxx/ > > > > In fact, with the new support of NDOs hwtstamp and the > > dev_get/set_hwtstamp_phylib functions, alongside this series which make > > timestamp selectable, changing the default timestamp may be not necessary > > anymore. > > > > Russell any thought about it? > > My position remains: in the case of Marvell PP2 network driver with a > Marvell PHY, when we add PTP support for the Marvell PHYs (I have > patches for it for years) then we must _not_ regress the existing > setup where the PP2 timestamps are the default. Yes, that's what I thought. About the Marvell PHYs PTP support I have a few fixes on it, but we will talk about it when this series gets merged. Regards, -- Köry Maincent, Bootlin Embedded Linux and kernel engineering https://bootlin.com