Re: [PATCH v3 3/5] net: Let the active time stamping layer be selectable.

Köry Maincent
2023-03-14T11:03:46Z

On Mon, 13 Mar 2023 09:40:59 +0100
Oleksij Rempel <o.rempel@pengutronix.de> wrote:

> > But, as you point out, with Köry's/Richard's proposal, the MAC driver
> > will be bypassed when the selected timestamping layer is the PHY, and
> > that's a problem currently.
> >
> > May I suggest the following? There was another RFC which proposed the
> > introduction of a netdev notifier when timestamping is turned on/off:
> > https://lore.kernel.org/netdev/20220317225035.3475538-1-vladimir.oltean@nxp.com/
> >
> > If we have a notifier, then we can make switch drivers do things
> > differently. They can activate timestamping per se in the timestamping
> > NDO (which is only called when the MAC is the active timestamping layer),
> > and they can activate PTP traps in the netdev notifier (which is called
> > any time a timestamping status change takes place - the notifier info
> > should contain details about which net_device and timestamping layer
> > this is, for example).
> >
> > It's just a proposal of how to create an alternative notification path
> > that doesn't disturb the goals of this patch set.

I will take a look at your patch but indeed adding a timestamp notifier could
be a good idea.

> To make things even more complicated - I have a project where the DSA master
> should be used for time stamping. Due to board specific limitations, we
> are forced to use FEC PHC instead of dsa KSZ switch PHC. So, it is not
> a choice between MAC and PHY, it is more the MAC before MAC and PHY.
> PTP sync in this case will have more jitter, but it still good enough
> for this project.
> Currently I use quick hack to do so, but mainlinamble solution working for
> most use cases will be nice.

In this case it is not a PHY/MAC PTP choice anymore but more a device
PTP choice which bring a lot more of complexity. Or maybe we could simply add a
"switch" timestamp layer later on. As Andrew said we will maybe increase the
number of timestamp layers in the future.

Regards,
Köry