[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID:
<PAXPR04MB85109FE64C4FCAD6D46895428851A@PAXPR04MB8510.eurprd04.prod.outlook.com>
Date: Thu, 17 Jul 2025 09:49:46 +0000
From: Wei Fang <wei.fang@....com>
To: Krzysztof Kozlowski <krzk@...nel.org>
CC: "robh@...nel.org" <robh@...nel.org>, "krzk+dt@...nel.org"
<krzk+dt@...nel.org>, "conor+dt@...nel.org" <conor+dt@...nel.org>,
"richardcochran@...il.com" <richardcochran@...il.com>, Claudiu Manoil
<claudiu.manoil@....com>, Vladimir Oltean <vladimir.oltean@....com>, Clark
Wang <xiaoning.wang@....com>, "andrew+netdev@...n.ch"
<andrew+netdev@...n.ch>, "davem@...emloft.net" <davem@...emloft.net>,
"edumazet@...gle.com" <edumazet@...gle.com>, "kuba@...nel.org"
<kuba@...nel.org>, "pabeni@...hat.com" <pabeni@...hat.com>,
"vadim.fedorenko@...ux.dev" <vadim.fedorenko@...ux.dev>, Frank Li
<frank.li@....com>, "shawnguo@...nel.org" <shawnguo@...nel.org>,
"s.hauer@...gutronix.de" <s.hauer@...gutronix.de>, "festevam@...il.com"
<festevam@...il.com>, "F.S. Peng" <fushi.peng@....com>,
"devicetree@...r.kernel.org" <devicetree@...r.kernel.org>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"imx@...ts.linux.dev" <imx@...ts.linux.dev>, "kernel@...gutronix.de"
<kernel@...gutronix.de>
Subject: RE: [PATCH v2 net-next 02/14] dt-bindings: net: add nxp,netc-timer
property
> On Thu, Jul 17, 2025 at 08:32:38AM +0000, Wei Fang wrote:
> > > On Wed, Jul 16, 2025 at 03:30:59PM +0800, Wei Fang wrote:
> > > > NETC is a multi-function PCIe Root Complex Integrated Endpoint
> > > > (RCiEP) that contains multiple PCIe functions, such as ENETC and
> > > > Timer. Timer provides PTP time synchronization functionality and
> > > > ENETC provides the NIC functionality.
> > > >
> > > > For some platforms, such as i.MX95, it has only one timer
> > > > instance, so the binding relationship between Timer and ENETC is
> > > > fixed. But for some platforms, such as i.MX943, it has 3 Timer
> > > > instances, by setting the EaTBCR registers of the IERB module, we
> > > > can specify any Timer instance to be bound to the ENETC instance.
> > > >
> > > > Therefore, add "nxp,netc-timer" property to bind ENETC instance to
> > > > a specified Timer instance so that ENETC can support PTP
> > > > synchronization through Timer.
> > > >
> > > > Signed-off-by: Wei Fang <wei.fang@....com>
> > > >
> > > > ---
> > > > v2 changes:
> > > > new patch
> > > > ---
> > > > .../devicetree/bindings/net/fsl,enetc.yaml | 23
> +++++++++++++++++++
> > > > 1 file changed, 23 insertions(+)
> > > >
> > > > diff --git a/Documentation/devicetree/bindings/net/fsl,enetc.yaml
> > > b/Documentation/devicetree/bindings/net/fsl,enetc.yaml
> > > > index ca70f0050171..ae05f2982653 100644
> > > > --- a/Documentation/devicetree/bindings/net/fsl,enetc.yaml
> > > > +++ b/Documentation/devicetree/bindings/net/fsl,enetc.yaml
> > > > @@ -44,6 +44,13 @@ properties:
> > > > unevaluatedProperties: false
> > > > description: Optional child node for ENETC instance,
> > > > otherwise use
> > > NETC EMDIO.
> > > >
> > > > + nxp,netc-timer:
> > >
> > > Heh, you got comments to use existing properties for PTP devices and
> > > consumers. I also said to you to use cell arguments how existing
> > > bindings use it.
> > >
> > > You did not respond that you are not going to use existing properties.
> > >
> > > So why existing timestamper is not correct? Is this not a timestamper?
> > > If it is, why do we need to repeat the same discussion...
> > >
> >
> > I do not think it is timestamper. Each ENETC has the ability to record
> > the sending/receiving timestamp of the packets on the Tx/Rx BD, but
> > the timestamp comes from the Timer. For platforms have multiple Timer
>
> Isn't this exactly what timestamper is supposed to do?
>
According to the definition, timestamper requires two parameters, one is
the node reference and the other is the port, and the timestamper is added
to the PHY node, and is used by the gerneric mdio driver. The PTP driver
provides the interfaces of mii_timestamping_ctrl. So this property is to
provide PTP support for PHY devices.
timestamper: provides control node reference and
the port channel within the IP core
The "timestamper" property lives in a phy node and links a time
stamping channel from the controller device to that phy's MII bus.
But for NETC, we only need the node parameter, and this property is
added to the MAC node.
Powered by blists - more mailing lists